这篇博客主要讲一些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: