Java程序设计基础------数组与字符串

这篇博客主要讲一些Java中数组与字符串的内容,还是用问题的方式来记录学习过程。

 在Linux系统下命令pwd,cd,ls,mkdir的作用分别是什么?

pwd :打印工作目录

cd :改变工作目录

ls :查看目录内容

mkdir :创建目录

简述相对路径和绝对路径。

绝对路径: 是文件或目录在硬盘上的绝对位置,以根目录为开始

相对路径: 文件或目录相对于当前工作目录的位置,不以根目录为开始

char类型能否存储一个中文字符?为什么? 

 可以。一个char是两个字节,而一个中文也是两个字节。

String a=null; if (a!=null && a.length()>10) {...}上面的代码,如果你用“&”替换“&&”将发生什么错误?

会抛出空指针异常。&&会短路,如果&&左边的表达式值为false,a!=null刚好为false,那么&&右边的表达式就不再执行了;而&则是会把两边的表达式都执行完。

java.util.Arrays提供的主要方法:

 int [] s = {1,2,3,4,5};
 int [] w = {1,2,3,4,5};
 System.out.println(Arrays.toString(s));//[1,2,3,4,5]
System.out.println(Arrays.equals(w,s));//true
//System.out.println(Arrays.sort(s));//这句话会报错,因为这个函数不返回任何值,说明排序是原地排序!
 System.out.println(Arrays.binarySearch(s,3));//2

从键盘输入n个数,输出大于平均数的数字

import java.util.*;
public class Arr5_1 {

	private static Scanner scanner;

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		int n;
		double ave;
		int sum = 0;
		scanner = new Scanner(System.in);
		System.out.print("请输入一个数字:");
		n = scanner.nextInt();
		int [] a = new int [n];
		for (int i = 0; i < n; i++) {
			System.out.println("请输入第"+(i+1)+"个数");
			a[i] = scanner.nextInt();
			sum = sum + a[i];
		}
		ave = (double)sum/n;
		System.out.println("大于平均数的数字有:");
		for (int i = 0; i < a.length; i++) {
			if(a[i] > ave){
				System.out.println(a[i]);
			}
		}
	}
}

从键盘输入n个数,输出最大数和最小数

import java.util.*;

public class Arr5_2 {
	
	
	public static void main(String[] args) {
	int n;
	int max;
	int min;
	Scanner scanner = new Scanner(System.in);
	System.out.print("请输入一个数字:");
	n = scanner.nextInt();
	int [] a = new int [n];
	for (int i = 0; i < a.length; i++) {
		System.out.println("请输入第"+(i+1)+"个数:");
		a[i] = scanner.nextInt();
	}
	max = a[0];
	min = a[0];
	for (int i = 1; i < a.length; i++) {
		if (max < a[i]) {
			max = a[i];
		}
		if (min > a[i] ){
			min = a[i];
		}		
	}
	System.out.println("最大值是:"+max);
	System.out.println("最小值是:"+min);
	
	}
}

产生0--100的8个随机数,并利用冒泡排序将其排序后输出

//冒泡排序
public class Arr5_3 {
	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		int [] s = new int[8];
		int temp;
		for (int i = 0; i < s.length; i++) {
			s[i] = (int) (Math.random()*100)+1;	
		}
		for (int i = 0; i < s.length - 1; i++) {
			for (int j = 0; j < s.length - 1 - i; j++) {
				if (s[j] > s[j+1]) {
					 temp = s[j];
					 s[j] = s[j+1];
					 s[j+1] = temp;
				}
			}
		}
		for (int j2 = 0; j2 < s.length; j2++) {
			System.out.println(s[j2]);	
		}
	}
}

编写Java程序,比较命令行中给出的两个字符串是否相等,并输出结果

public class Arr5_7 {

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		String a = "123";
		String b = "123";
		System.out.println(a.equals(b));

	}
}

从键盘上输入一个字符串和子串的开始位置与长度,截取子串并输出

import java.util.Scanner;

public class Arr5_8 {

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		Scanner sc = new Scanner(System.in);
		String s = sc.nextLine();
		int start = sc.nextInt();
		int stop = sc.nextInt();
		String new_s = s.substring(start-1,start+stop-1);
		System.out.println(new_s);
	}

}

从键盘上输入一个字符串和一个字符,从该字符串中删除给定的字符,并输出

import java.util.Scanner;

public class Arr5_9 {

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		String s;
		String ch;
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入一个字符串:");
		s = sc.nextLine();
		System.out.println("请输入一个字符");
		ch = sc.nextLine();
		System.out.println("请字符串为:");
		System.out.println(s.replace(ch, ""));
	}
}

统计用户从键盘输入的字符串所包含的字母,数字,其他字符的个数并输出

package code;//统计用户从键盘输入的字符串所包含的字母,数字,其他字符的个数并输出

import java.util.Scanner;

public class Arr5_10 {

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		int num_count = 0;
		int zimu_count = 0;
		int else_count = 0;
		Scanner sc = new Scanner(System.in);
		String s = sc.nextLine();
		char[] ch = s.toCharArray();
		for (int i = 0; i < ch.length; i++) {
			char c = ch[i];
			if ('0' < c && c < '9') {
				num_count++;
			}
			else if(('A' < c && c < 'Z')||('a' < c && c < 'z')) {
				zimu_count++;
			}
			else {
			else_count++;
			}		
		}
		
		System.out.println("数字个数:"+num_count);
		System.out.println("字母个数:"+zimu_count);
		System.out.println("其他个数:"+else_count);
		
	}

}

将用户从键盘输入的每行数据都显示输出,直到输入“exit”时,程序结束

import java.util.Scanner;

public class Arr5_11 {

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		Scanner sc = new Scanner(System.in);
		String s;
		while(true) {
			s = sc.nextLine();
			if (s.equals("exit")) {
				break;
			}
			else {
				System.out.println(s);
			}
		}

	}

}

最后在来一张图解释Arrays:

猜你喜欢

转载自blog.csdn.net/yanzhiguo98/article/details/88367889
今日推荐