方法和键盘输入
作者:互联网
1 >方法
1.概念:
将一个功能抽取出来,把代码单独的放在一个语句块内(一对大括号内),形成一个单独的功能,当需要这个功能的时候,就可以去调用。既实现了2代码的复用性,也解决了代码的冗余的情况
2.语法:
public [static] <返回值类型> <方法名>([参数列表]){
方法体代码....
[return 返回值];
}
备注:语法中看到[] 表示可有可无 <>代表必须要有
说明:
(1)修饰符:目前使用public static
(2)返回值类型:
--有返回值:任意的数据类型,方法执行后会将结果返回给调用者
--无返回值:void,如果方法使用void来定义,那么方法中不需要写[return 返回值];
(3)方法名:
需要遵守标识符命名规则和规范,采用小驼峰命名法,也要见名知意
(4)参数列表:
参数列表中可以没有参数,也可以有多个参数,多个参数之间使用逗号,隔开
例如:(int number,String str) 数据类型 参数名
(5)return:
return后的返回值的类型要与方法名前面的返回值类型要一致
将方法执行的结果返回给调用者。方法执行到return,方法结束
3.分类:
①无参无返回
//定义一个方法 :无参无返回
public static void printShow(){
//方法体内容
System.out.println("来,展示");
}
②无参有返回
//定义方法:无参有返回
public static int add(){
int a = 10,b = 20;
return a + b;
}
③有参无返回
//定义方法:有参无返回
//参数列表:数据类型 参数名
public static void sum(double a,int b){
double sum = a + b;
System.out.println("sum = " + sum);
}
④有参有返回
//定义方法:有参有返回
public static String print(String name,int age){
return name+"新年快乐,不要高兴,你又大了一岁已经"+age+"岁";
}
4.方法的调用
方法的调用:
方法创建后不会自动调用,需要手动调用
如何调用方法
①明确方法在哪个类中
②观察方法有没有被static修饰(是不是一个静态方法)
情况一:
没有static
①创建类的对象
类名 自定义对象名 = new 类名();
②调用方法
情况一:有返回值
返回值类型 变量名 = 自定义对象名.方法名(参数列表);
情况二:无返回值
自定义对象名.方法名(参数列表);
情况二:
有static
调用方法
情况一:有返回值
返回值类型 变量名 = 类名.方法名(参数列表);
情况二:无返回值
类名.方法名(参数列表);
5.使用方法时两个概念
形式参数:定义方法时参数列表中的参数名,一般称之为行参
实际参数:调用方法时传入的参数,一般称之为实参
6.方法使用的注意事项
1.方法必须定义在类中
2.方法中不能定义另一个方法,不允许方法的嵌套。方法之间只能互相调用
3.不能在return语句之后写代码,return语句意味着方法的结束
4.返回值类型必须要和return语句后的返回值类型一致,否则编译不通过
7.方法的应用:怎么创建方法
定义方法时需要明确几点:
1.明确返回值类型
有 需要得到什么类型的结果 没有void
2.方法名:见名知意
3.明确参数
有 没有
8.练习
练习一:比较两个的数是否相等
package com.softeem.exer;
/**
* @author zhengwen
* @create 2021-12-31 8:39
*/
public class Exer01 {
public static void main(String[] args) {
//比较两个的数是否相等
/**
* 1.明确返回值类型
* 没有 void
* 2.方法名:compareNumber
* 3.明确参数
* 有 两个 int类型 double类型
*/
//不能在main方法中创建
//调用static方法
// String s = compareNumber(20, 20);
// System.out.println("s = " + s);
//或者
// System.out.println(compareNumber(20, 20));
compareNumber(10,20);
}
//创建方法
/*public static void compareNumber(int a ,int b){
//三目运算符
String s = a == b ? "等于" : "不等于";
System.out.println("s = " + s);
//if判断
if(a == b){
System.out.println("等于");
}else {
System.out.println("不等于");
}
}*/
public static String compareNumber(int a ,int b){
//三目运算符
/*String s = a == b ? "等于" : "不等于";
return s;*/
//或者
//return a == b ? "等于" : "不等于";
if(a == b){
return "等于";
}else {
return "不等于";
}
}
}
练习二:计算1+2+3+...+100的和
package com.softeem.exer;
/**
* @author zhengwen
* @create 2021-12-31 13:54
*/
public class Exer02 {
public static void main(String[] args) {
//计算1+2+3+...+100的和
/**
* 返回值:有 int类型
* 方法名:getSum
* 参数:无
*
* 公式或者for循环
*/
//调用方法
int sum = getSum(10);
System.out.println("sum = " + sum);
}
//创建方法
public static int getSum(int n){
int sum = n * (1+n) /2; //100*(1+100)/2
return sum;
}
/*public static int getSum(){
//使用for循环 快捷键:fori
int sum = 0;//用来存储结果
for (int i = 1; i <= 100 ; i++) {
//System.out.println(i);//1 2 3 4 5 6 ....
sum += i; //sum = sum + i;
}
return sum;
}*/
}
2>键盘输入
Scanner类:
这个类是Java官方给我们提供的类,不需要自定义创建出来,可以直接使用(需要导包)
使用步骤:
1.导入包
import java.util.Scanner;
2.创建Scanner类的实例化对象
Scanner 自定义对象名 = new Scanner(System.in);
3.通过自定义对象名来去调用Scanner类中的方法
①int num = 自定义对象名.nextInt(); //获取整数
②double num2 = 自定义对象名.nextDouble(); //获取小数
③boolean b = 自定义对象名.nextBoolean(); //获取布尔类型
④String s = 自定义对象名.next(); //获取字符串,碰到空格结束
String s2 = 自定义对象名.nextLine(); //获取字符串,碰到回车结束
⑤获取字符char类型数据,需要先获取字符串,然后在调用字符串中的charAt()方法来获取字符
String s3 = 自定义对象名.next();
char c = s3.charAt(0);
或者char c = 自定义对象名.next().charAt(0);
package com.softeem.scanner_;
import java.util.Scanner;
/**
* @author zhengwen
* @create 2021-12-31 14:03
*/
public class ScannerDemo {
public static void main(String[] args) {
//1.导包 import java.util.Scanner;
//2.创建Scanner类实例化对象
Scanner input = new Scanner(System.in);
//3.调用Scanner类中的方法
//把输入的数据赋值给了num
/*int num = input.nextInt();
System.out.println("num = " + num);
byte b = input.nextByte();
System.out.println("b = " + b);
short i = input.nextShort();
System.out.println("i = " + i);
long l = input.nextLong();
System.out.println("l = " + l);*/
//获取浮点数
/*float v = input.nextFloat();
System.out.println("v = " + v);
double v1 = input.nextDouble();
System.out.println("v1 = " + v1);*/
//获取布尔类型
/*boolean b = input.nextBoolean();
System.out.println("b = " + b);*/
//字符串类型
// String next = input.next();
// System.out.println("next = " + next);
// String s = input.nextLine();
// System.out.println("s = " + s);
//获取字符类型char
//1.先获取字符串
// String next = input.next();
// //2.调用字符串的charAt(0)方法获取字符
// //charAt方法中的数字0表示:字符串的第一个字符
// char c = next.charAt(0);
// System.out.println("c = " + c);
char c1 = input.next().charAt(0);
System.out.println("c1 = " + c1);
}
}
标签:int,System,键盘输入,static,println,方法,out 来源: https://blog.csdn.net/Mar_Yun18/article/details/122398314