Java基础学习到进阶自我总结

2019-12-24

Java数组的基本操作 有什么不对或不足的欢迎指点。

求4位数每一位的值

//求4位数每一位数的值
int q,b,s,g,a=1234;
q = a/1000;
b = a/100%10;
s = a/10%10;
g = a%10;
//ps  题外知识
char c = a;	//字符 只能存放一个字符
String str = "";
str = c+"";	//所有的基本数据类型转换为字符串 +"";

求数组的最大最小和平均值(取两位小数)

/*
*求数组的最大和最小值,和平均值
*/
int max = as[0],min=as[0];
int sum = as[0];
for (int i = 1; i < as.length; i++) {
          
   
	sum += as[i];
	if (as[i]>max) {
          
   
		max = as[i];
	}
	if(as[i]<min){
          
   
		min = as[i];
	}
			
}
/*
*求平均值并取两位小数
*/
avg = sum*1.0/as.length //求双精度的平均值
//取到数小数点后两位的第一种方法
avg = Math.round(avg*100)*1.0/100; //乘100再四舍五入取整数,转换乘双精度,然后在除以100
//取小数点后两位的第二种方法:得到的值为字符串

DecimalFormat dFormat = new DecimalFormat("#.##");//小数点后面多少个#就多少位,也是四舍五入
String str = dFormat.format(avg);

找出数组中重复的元素

// An highlighted block

int as[] = {
          
   23,10,15,10,20,48,20,20,20};
boolean flat = false;
String str = "";
for (int i = 0; i < as.length; i++) {
          
   
	for (int j = i+1; j < as.length; j++) {
          
   
		if (as[i]==as[j]) {
          
   	
		//第一个","不输出
			if (flat) {
          
   //if(flat)相当于if(flat==true)
				str = str + ",";
			}
			str = str +as[i];
			flat = true;
			break;	
		}
	}
}
System.out.println(str);

数组长度自动增长练习

/**
 * 数组长度自动增长练习01
 * @author Administrator
 *有数组int as[] = {0,1,12,0,15,56,0,78,32,0,0,12},
 *利用数组的知识实现取出数组as的0,然后输出没有0的数组的值。
 */

int as[] = {
          
   0,1,12,0,15,56,0,78,32,0,0,12};
		System.out.println(Arrays.toString(as));
		int nas[] = {
          
   };
		for(int a : as){
          
   //foreach遍历数组
			if(a!=0){
          
   
				//nas数组长度为0每加1长度添加一个集合
				nas = Arrays.copyOf(nas, nas.length+1);
				//给nas[nas长度-1]位置赋值
				nas[nas.length-1] = a;
			}
		}
		System.out.println(Arrays.toString(nas));
经验分享 程序员 微信小程序 职场和发展