正则表达式
public static void main(String []args){
String str=("i am tqa"+"wangkai.com");
String s=(".*tq.*");//子字符串
boolean match=Pattern.matches(s,str);
System.out.println("字符串是否包含了‘tq’子字符串?:"+match);//字符串是否包含了‘tq’子字符串?:true
}
Java方法
public static double max(double num1,double num2,double num3) {
double number;
if(num1>num2&num1>num3) {
number=num1;
}
if(num2>num3&num2>num1){
number=num2;
}else {number=num3;}
return number; //定义一个方法
}
方法调用
//主方法
public static void main(String []args) {
double a=1.3;
double b=2;
double c=7;
double d=max(a,b,c); //调用次方法
System.out.println(a+"和"+b+"和"+c+"比较,最大值是:"+d);
}
//次方法
public static double max(double num1,double num2,double num3) {
double number;
if(num1>num2&num1>num3) {
number=num1;
}
if(num2>num3&num2>num1){
number=num2;
}else {number=num3;}
return number;
}
void关键字
申明和调用void方法
public static void main(String []args) {
printtGrade(70); //调用void方法
}
public static void printtGrade(double grade) { //申明void方法
if (grade>=90) {
System.out.println("优秀");
}
else if(grade>=70) { //if会执行多个,else if执行首个条件
System.out.println("良好");
}
else if (grade>=60) {
System.out.print("及格");
}
else {System.out.println("不及格");}
}
通过值传递参数
public static void main(String []args) {
int a=1;
int b=2;
System.out.println("转换前a的值是:"+a+",b的值是:"+b);
swap(a,b); //调用swap方法
System.out.println("转换后a的值是:"+a+",b的值是:"+b);
}
//
public static void swap(int a,int b) { //交换两个变量的方法
System.out.println("\t进入swap方法");
System.out.println("\t\t转换前a的值是:"+a+",b的值是:"+b);
int c=a;
a=b;
b=c; //交换a,b的值
System.out.println("\t\t转换后a的值是:"+a+",b的值是:"+b);
}
可变参数
public static void main(String []aegs) {
printMax(2,4.5,9.8,9,6);
printMax(new double[] {1,2,3});
} //调用可变参数的方法
public static void printMax(double... number) {
if(number.length==0) {
System.out.println("没有参数");
return;
}
double result=number[0];
for(int i=1;i<number.length;i++) {
if(number[i]>result) {
result=number[i];
}
}
System.out.println("the max value is:"+result);
}
从控制台读取多字符输入
import java.io.*;
public static void main(String []args) throws IOException{
char c;
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
System.out.println("输入字符,按下‘q’键推出"); //输入字符后回车键可继续输入,输入q之后回车将退出无法继续输入,若q在字符中间,那么只输出到q结束,后面的字符不再输出
do {
c=(char) br.read();
System.out.println(c);
}while(c!='q');
}
Scanner类(获取用户输入)
使用next方法
1、一定要读取到有效字符后才可以结束输入。
2、对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。
3、只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
next() 不能得到带有空格的字符串。
public static void main(String []args) {
Scanner sc=new Scanner(System.in); //从键盘接收数据
System.out.println("next方式接收:");//next方式接收字符串
if(sc.hasNext()) { //判断是否还有输入
String str1=sc.next();
System.out.println("输入的数据为:"+str1);
}sc.close();
}
使用nextLine方法
1、以Enter为结束符,也就是说 nextLine()方法返回的是输入回车之前的所有字符。
2、可以获得空白。
public static void main(String []args){
Scanner sc=new Scanner(System.in);
System.out.println("nextLine方法:");
if(sc.hasNext()){
String str=sc.nextLine();
System.out.println("输入的数据为:"+str);
}sc.close();
}
求和及其平均数
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); //从键盘接入
double sum = 0; //设“和”的初始值为0
int num = 0; //设初始是0个
while (sc.hasNextDouble()) {
double x = sc.nextDouble();//引用键盘输入信息
num = num + 1; //输入时个数+1
sum = sum + x; //和=上一次和的值+输入值
}
System.out.println(num + "个数的和为" + sum);
System.out.println(num + "个数的平均值是" + (sum / num));
sc.close();
}