- 浏览: 318886 次
- 性别:
- 来自: 西安
最新评论
-
yjq8116:
getString 这个方法你有没有试过,是错误的。这段代码被 ...
ByteBuffer和String的互相转换 -
OnlyForJava:
博主,友情的提醒下,你的Ubuntu写错了
Ubutun上配置hadoop,hbase,zookeeper环境并安装
文章列表
转自:http://blog.csdn.net/xiao__gui/article/details/19810379
Apache FtpServer是一个纯Java实现的FTP服务器,基于大名鼎鼎的网络框架apache MINA实现。它既可以作为一个完整的FTP服务器单独使用,也可以在Java程序中调用,类似于Jetty可以作为嵌入式的HTTP服务器。
下面介绍如何在Java中启动FTP服务器。
Apache FtpServer下载地址,目前最新版是1.0.6:
http://mina.apache.org/ftpserver-project/index.h ...
初试JNI
- 博客分类:
- Android框架揭秘
最近在看一本韩国人编写的关于Android框架的书《Android框架揭秘》,书中讲到JNI(Java Native Interface)。于是来了兴致尝试一下:
首先试一下在Java中调用C语言编写的动态链接库(dll):
1:编写一个类,并编译之:
public class HelloJNI
{
native void printHello();
native void printString(String str);
static{ System.loadLibrary("hellojni"); }
...
探究Java的.class文件和类加载器
- 博客分类:
- 并发编程
最近在拜读林昊先生写的《分布式Java应用基础与实践》,有一种相见恨晚的感觉。决定把自己看书的收获写出来。以前没有深度考虑.class文件里面到底是什么,今天我们就来一窥.class文件。
首先写个超级简单 ...
#include<stdio.h>
#include<iostream>
using namespace std;
void print(int arr[3])
{
int i;
for(i=0;i<3;i++)
{
printf("%d",arr[i]);
}
printf("\n");
}
void swap(int arr[3],int i,int j)
{
int temp;
temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
...
sizeof结构体分析
- 博客分类:
- C语言
最近看书总是遇到定义一个结构体,然后问你sizeof(此结构体)的值是多少?
本人看了看<<深入理解计算机系统>>一书,由做了些实验。总结一下:
1:
struct Foo{
int a;
union U{
}u;
};
int main( ...
最近在看一些笔试题目,比如说诸如:
例一: 解答:变换一次就成为为1的只有 2(2/2);
变换两次就成为1的也只有一个4(4/2 2/2);
变换三次就成为1的有两个数 3(3+1,4/2,2/2)和 8(8/2,4/2,2/2)。
变换四次就成为1的有三个数6 7 和16(就不一一列了)
所以发现这是一个Fib数列呀。
所以答案为:34(第九个fib数)
例二:
求5个小方格可以组成多少个不同的图形。
仔细想想竟然是Catlan数呀。
1 个小方格可以组成 1 ...
问题一:
对同一个基本有序的待排序列分别进行堆排序、快速排序和冒泡排序,最省时间的算法是_____
分析:
冒泡排序 冒泡排序、快速排序、堆排序性能比较对照
排序方法 比较次数 移动次数 稳定 辅助空间
最好 最差 最好 最差 是 最好 最差
冒泡排序 n n^2 0 n^2 ...
线性再散列的一个问题详解
- 博客分类:
- 操作系统
问题:已知一个线性表(38,25,74,63,52,48),假定采用散列函数h(key)=key%7计算散列地址,并散列存储在散列表A[0..6]中,若采用线性探测方法解决冲突,则在该散列表上进行等概率成功查找的平均查找长度为__________.A.1.5 B.1.7 C.2.0 D.2.3分析:利用该散列函数散列存储结果为68|48 | |38|25|74|52位置 0 1 2 3 4 5 6平均查找长度=总的查找次数/元素数=(1*3+2*1+3*1+4*1)/6=2.0
页式存储中逻辑地址向物理地址的转换
- 博客分类:
- 操作系统
基本原理
1.等分内存
页式存储管理将内存空间划分成等长的若干区域,每个区域的大小一般取2的整数幂,称为一个物理页面有时称为块。内存的所有物理页面从0开始编号,称作物理页号。
2.逻辑地址
系统将程序的逻辑空间按照同样大小也划分成若干页面,称为逻辑页面也称为页。程序的各个逻辑页面从0开始依次编号,称作逻辑页号或相对页号。每个页面内从0开始编址,称为页内地址。程序中的逻辑地址由两部分组成:
本篇博客持续更新,发现有误区的地方会加进来.......................................
1.
printf("%f\n",2.2+1/4);
以为会输出2.45
实际上输出时2.2。
以为1/4是0.25
实际上是0。
因为1和4都是int型的。若改为1.0/4就是2.45 ...
通过一个例子看Java中覆盖和隐藏的区别
- 博客分类:
- Java解惑
Java中有一条规则,子类复写父类的方法时,子类的这个方法的访问权限应该宽于或等于父类的那个方法的权限。举个例子,就是说如果父类中有一个方法是protected void getName(){}。则子类在复写该方法的时候,权限只能是public或者protected。不能是private。
所以看看下面这个程序,预测一下输出结果:
class Father{
public String className="Father";
public void className(){
System.out.prin ...
(转)volatile的定义
- 博客分类:
- Java解惑
最近看到volatile关键字的一个解释,感觉写的很好。粘出来巩固一下:
看一个构造函数执行顺序的例子
- 博客分类:
- Java解惑
首先看看下面代码,猜猜会输出什么?
class Member{
public Member(){
System.out.println("Member");
}
}
class Father{
public Father(){
System.out.println("Father.");
}
}
public class BigProblem extends Father{
private Member member=new Member();
public BigProblem( ...
各种排序的时间复杂度
- 博客分类:
- 小小算法
最近看了一些面试题,有很多考算法的时间复杂度的。搜一些资料看看:
1.选择排序:不稳定,时间复杂度 O(n^2)
选择排序的基本思想是对待排序的记录序列进行n-1遍的处理,第i遍处理是将L[i..n]中最小者与L[i]交换位置。这样,经过i遍处理之后,前i个记录的位置已经是正确的了。
2.插入排序:稳定,时间复杂度 O(n^2)