2020.8.8
一、今日学习内容
1、一维数组中找出最大值、最小值、进行排序
1 import java.util.Scanner; 2 import java.util.Arrays; 3 public class MaxMinSort { 4 public static void main(String[] args) { 5 int[] a=new int[10]; 6 Scanner con=new Scanner(System.in); 7 System.out.println("请输入10个数字:"); 8 for(int i=0;i<10;i++) 9 { 10 a[i]=con.nextInt(); 11 } 12 int max=a[0];int min=a[0]; 13 for(int i=1;i<10;i++) 14 { 15 if(a[i]>max) max=a[i];//找出最大值 16 if(a[i]<min) min=a[i];//找出最小值 17 } 18 System.out.println("最大值:"+max); 19 System.out.println("最小值:"+min); 20 Arrays.sort(a);//从小到大排序 21 System.out.println(Arrays.toString(a)); 22 } 23 }
2、文件名与文件类型的分离
import java.util.Scanner; public class FilenameFenli { public static void main(String[] args) { Scanner con=new Scanner(System.in); System.out.println("请输入一个文件名:"); String filename=con.nextLine(); String[] str=filename.split("\\."); System.out.println("文件名为:"+str[0]); System.out.println("文件类型为:"+str[1]); } }
split用法:
1、如果用“.”作为分隔的话,必须是如下写法:String.split("\\."),这样才能正确的分隔开,不能用String.split(".");
2、如果用“|”作为分隔的话,必须是如下写法:String.split("\\|"),这样才能正确的分隔开,不能用String.split("|");
“.”和“|”都是转义字符,必须得加"\\";
3、如果在一个字符串中有多个分隔符,可以用“|”作为连字符,比如:“a=1 and b =2 or c=3”,把三个都分隔出来,可以用String.split("and|or");
String类的用法:
1.equals方法只比较字符串里面的内容
String st1=“haha”;
String st2=“haha”;
st2.equals(st1);//返回的是true类型
//!!! equals除了在Object类中比较内容和首地址
在其他类中比较的都是内容
2.charAt方法根据索引返回char类型的字符
String s1=“abcd”;
s1.charAt(0);//可以得到a这个字母
用charAt这个方法基本会用for循环遍历一下
3.concat方法就是连接字符串
String s3=“abc”;
s3.concat(“xyz”)
4.contains方法 是否包含某个字符串
String s3=“abc”;
s3.contains(“ab”)
如果包含就返回true 不包含就返回false
5.replace方法用新的字符串来代替旧的字符串
String s6=“我爱哈哈”;
s6.replace(“哈哈”, “你好”)//哈哈就被你好代替
6.toCharArry就是将字符串转化为字符数组
String s8=“abcde”;
char[]c=s8.toCharArray();
//通过for循环遍历出来
for(int i=0;i<c.length;i++){
System.out.println(c[i]);
}
7.trim方法 是去掉前后的空格
String s10=" a b n ";
s10.trim()
8.valueOf将基本数据类型转化为String类型
String.valueOf(1.2)
9.toUpperCase toLowerCase换大小写
String s9=“acaBBB”;
s9.toUpperCase()//全部转化为大写字母
s9.toLowerCase()//全部转化为小写字母
10字符串截取
String s7=“今天中午吃什么”;
//截取字符串起始位置
System.out.println(s7.substring(2));//输出效果是 中午吃什么
//截取字符串包前不包后
System.out.println(s7.substring(2, 4));//输出效果是 中午
11spilt 通过给定字符 拆分字符串
String birth=“1999-9-10”;
String []str=birth.split("-");
for(int i=0;i<str.length;i++){
System.out.println(str[i]);
}
输出效果是
1999
9
10
3、判断一个字符串中是否包含另一个字符串,并判断包含的次数
方法一:str.indexOf (str代表一个String的实现对象)
str.indexOf(st1)是从开头向后面检索st1在str中的位置下标从0开始,如果找不到返回-1
str.indexOf(st1,3) 从str的下标3开始查找st1,查询不到返回-1
方法二:contains方法 (是否包含某个字符串)
String s3=“abc”;
s3.contains(“ab”)
如果包含就返回true 不包含就返回false
#java中substring的用法:
str=str.substring(int beginIndex);截取掉str从首字母起长度为beginIndex的字符串,将剩余字符串赋值给str;
str=str.substring(int beginIndex,int endIndex);截取str中从beginIndex开始至endIndex结束时的字符串,并将其赋值给str;
1 import java.util.Scanner; 2 public class StringContains { 3 public static void main(String[] args) { 4 int count=0; 5 Scanner con=new Scanner(System.in); 6 System.out.print("请输入字符串s1:"); 7 String s1=con.nextLine(); 8 System.out.print("请输入字符串s2:"); 9 String s2=con.nextLine(); 10 while((s1.indexOf(s2))!=-1) 11 { 12 count++; 13 s1=s1.substring(s1.indexOf(s2)+s2.length()); 14 } 15 if(count==0)System.out.println("不包含!"); 16 if(count!=0)System.out.println("包含"+count+"次"); 17 } 18 19 }
二、遇到的问题
对String相关方法不会使用
三、明日计划
继续完成例题