Java初学者不可不知道知识点

emmm此篇博客只是由一个初学Java的小白所写,为了记录学习中遇到的问题,对一些dalao来说可能有点浅显,在入门阶段会随时更新的。

1.浮点数的精确方法。

double sum=input.nextDouble();
sum=  (double)(Math.round(sum*10000))/10000;//sum精确到四位小数

Math.round(double)具有四舍五入的功能,其他的就不用多说了吧

2.随机生成范围内字符

for(int i=0;i<10;i++) {//随机生成十个A-Z范围内字符
		System.out.print(randomc('A','Z')+" ");
	}


public static char randomc(char ch1,char ch2) {//函数方法
	return (char)(ch1+Math.random()*(ch2-ch1+1));}

Math.random()随机生成一个0~1的浮点数,加一是为了确保能去到Z。

3.在数组中单个字符的输入

char[] city=new char[10];
	for(int i=0;i<city.length;i++) {
		city[i]=input.next().charAt(0);//以空格隔开
	}

3.直接在字符串数组中输入一串字符(中间无空格隔开)

char[] city=new char[10];
	city=input.next().toCharArray();
	System.out.println(city);

4.使用Java打印当前时间以及自1970年至今的时间。

java.util.Date date=new java.util.Date();
				System.out.println("the elapsed time since Jan 1,1970 is "+date.getTime()+"milliseconds");
				System.out.println(date.toString());

5,方法重载(Overload):对于类似功能的多个方法,只要记住一个相同的方法名即可,可以根据参数列表自动适配,方法的名称跟变量的名称可以一样,方法名称也可相同,但是参数个数或类型,j及参数的类型顺序有不同。

public class Main {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
	//	int n = input.nextInt();
		int a;
		int i;
		//float num = (float) 2.12;
//		while (n-- > 0) {
			a = sum(10,20,30);
			System.out.println(a);
			a=sum(10,20);
			System.out.println(a);
	//}
				
}
public static int sum(int a,int b,int c) {	
			return a+b+c;
}
public static int sum(int a,int b) {
	return a+b;
}
}

7,当表达式的数据类型不同时,谁的数据范围大,就是谁,如下,方法类型为double.

public static double sum(int a,double b) {	
			return a+b;
}

8.局部变量和成员变量:这两者很容易搞混,但只要牢记以下两点:

局部变量:定义在方法内部,在栈内存中,没有默认值

成员变量:定义在类里面,方法外部,在堆内存中,默认值为0。

9,字符串的创建方法:String str=new String(char[]a rray,int start,int num);start表示数组的开始下标,num表示从下标开始的几个数字。

public static void main(String[] args) {
	char[] array= {'h','e','l','l','o','w'};
	String str=new String(array,2,3);
	System.out.println(str);	
	}

10.关于字符串的几点描述(string类内容不可改变):

a,字符串池是位于堆内存的一小块空间,用来保存若干个字符串地址

b,字符串池不会出现重复字符

c,凡是有双引号的都在池中,new出来的不在。

11.关于字符串的比较:空指针问题

String str=null;
		System.out.println("abc".equals(str));//false
		System.out.println(str.equals("abc"));//报错,空指针异常

12.字符串切割的使用方法split

注意:该切割无法将英文句点作为分隔符。

public class helloone {
	public static void main(String[] args) {
		int i;
		String src="aaa,bbb,vvv";
		String[] array=src.split(",");
		for(i=0;i<array.length;i++) {
			System.out.println(array[i]);
		}
	}	

将“.”改为英文句点会报错,与正则表达式有关

13.集合的基本使用(长度是任意的,按ctrl=shief+o可导包),集合泛型必须是引用类型,如果是基本类型则转换为包装类

public static void main(String[] args) {
		ArrayList<String> list=new ArrayList<>();//創建集合
		System.out.println(list);
		list.add("12345");//添加元素
		list.add("123");
		System.out.println(list);
		System.out.println("------------");
		String name=list.get(1);//提取元素
		System.out.println(name);
		System.out.println(list.size());//集合長度
	}	

集合的遍历换行输出

for(int i=0;i<list.size();i++) {
			String str =list.get(i);
			System.out.println(str);
		}

猜你喜欢

转载自blog.csdn.net/printfxgd/article/details/80611617