Java语言基础(9)
1 方法(二)
1) 不带参数没有返回值的方法:
案例:Demo1
public class Demo1 {
static void show(){
System.out.println("努力学习");
System.out.println("努力工作");
System.out.println("努力赚钱!");
}
public static void main(String[] args) {
System.out.println("调用show()方法之前");
show();
System.out.println("调用show()方法之后");
}
}
import java.util.Scanner;
public class Demo2 {
//编写一个没有返回值没有参数的方法add(),在add()中
//创建一个Scanner对象,从控制台输入任意的两个整数,
//执行加法运算,并输出运算的结果。
//在main方法中,调用add()方法。
static void add(){
Scanner sc = new Scanner(System.in);
System.out.println("请输入第1个整数:");
int num1 = sc.nextInt();
System.out.println("请输入第2个整数:");
int num2 = sc.nextInt();
int sum = num1 + num2;
System.out.println("sum="+sum);
}
public static void main(String[] args) {
add();
}
}
public class Demo3 {
//编写一个没有参数没有返回值的方法f1(),在f1()方法中
//分别求出100~1000之间所有奇数累加之和和所有的偶数
//的累加之和,并分别输出。
//在main方法中,调用f1()方法。
static void f1(){
int sum1=0,sum2=0;
//sum1保存奇数累加之和,sum2保存偶数累加之和。
for(int i=100;i<=1000;i++){
if(i%2!=0){//奇数
sum1 = sum1+i;
}else{//i%2==0 偶数
sum2 = sum2+i;
}
}
System.out.println("奇数累加之和:"+sum1);
System.out.println("偶数累加之和:"+sum2);
}
public static void main(String[] args) {
f1();
}
}
public class Demo4 {
//编写一个没有返回值没有参数的方法f1(),在f1()方法
//中,求出公元1~2016之间所有的闰年并输出
//在main方法中,调用f1()
static void f1(){
for(int i=1;i<=2016;i++){
if((i%4==0&&i%100!=0)||i%400==0){
System.out.println(i+"是闰年");
}
}
}
public static void main(String[] args) {
f1();
}
}
import java.util.Scanner;
public class Demo5 {
static void showYear(){
Scanner sc = new Scanner(System.in);
System.out.println("请输入年份:");
int year = sc.nextInt();
if(year>=1){
for(int i=1;i<=year;i++){
if((i%4==0&&i%100!=0)||i%400==0){
System.out.println(i+"是闰年");
}else{
System.out.println(i+"不是闰年");
}
}
}else{//year<1
System.out.println("输入错误");
}
}
public static void main(String[] args) {
showYear();
}
}
2) return:终止方法继续往下执行;return后面跟方法的返回值。当方法调用结束以后,通过return,把结果返回到调用的位置。
3) 不带参数带返回值的方法:
eg:
static int add(){
int num1=100,num2=200;
int sum = num1+num2;
return sum;
}
main(){
int result = add();
System.out.println("result="+result);
}
4) 带返回值的方法中声明的返回值类型,跟return后面的返回值的类型一致。最好能定义一个变量来接收返回的结果。
案例:Demo6
public class Demo6 {
//return: 终止方法继续往下执行;return的后面跟方法
//最终返回的结果。
//带返回的方法要求声明的返回值类型跟return后面的返回
//值的类型一致。最好能定义一个变量来接收返回的结果。
static int add(){
int num1=100,num2=200;
int sum = num1+num2;
return sum;
}
public static void main(String[] args) {
int result = add();
System.out.println("result="+result);
}
}
import java.util.Scanner;
public class Demo7 {
//编写一个没有参数带int类型返回值的方法sub()方法,
//在sub()方法中,创建一个Scanner对象,从控制台
//输入任意的两个整数,执行减法运算,并返回最终运算
//的结果,返回到调用的位置
//在main方法中,调用sub()方法,并输出返回的结果。
static int sub(){
Scanner sc = new Scanner(System.in);
System.out.println("请输入第1个整数:");
int num1 = sc.nextInt();
System.out.println("请输入第2个整数:");
int num2 = sc.nextInt();
int result = num1-num2;
return result;
}
public static void main(String[] args) {
int result = sub();
System.out.println("result="+result);
}
}
public class Demo8 {
//编写一个带int类型返回值没有参数的方法f1(),在f1()
//求出1~200之间所有的偶数累加之和并返回到调用的位置
//在main()方法中,调用f1(),并显示运算的结果。
static int f1(){
int sum = 0;
for(int i=1;i<=200;i++){
if(i%2==0){
sum = sum + i;
}
}
return sum;
}
public static void main(String[] args) {
int result = f1();
System.out.println(result);
}
}
import java.util.Scanner;
public class Demo9 {
//编写一个没有参数带一个int类型返回值的方法max(),
//在max()方法中,从控制台输入任意的两个整数,求出
//较大的整数的值,并返回到调用的位置。
//在main方法中,调用max()方法,并输出返回的结果。
static int max(){
Scanner sc = new Scanner(System.in);
System.out.println("请输入第1个整数:");
int num1 = sc.nextInt();
System.out.println("请输入第2个整数:");
int num2 = sc.nextInt();
// 方法3
if(num1>=num2){
return num1;
}else{//num1<num2
return num2;
}
/* 方法2
int max=0;
if(num1>=num2){
max = num1;
}else{//num1<num2
max = num2;
}
return max;
方法1
int max = num1>=num2 ? num1 : num2;
return max;
*/
}
public static void main(String[] args) {
int result = max();
System.out.println("较大的整数是"+result);
}
}
import java.util.Scanner;
public class Demo10 {
static int f1(){
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数:");
int num = sc.nextInt();
if(num>=1){
int sum = 0;
for(int i=1;i<=num;i=i+2){//奇数
sum = sum + i;
}
return sum;
}else{//num<1
System.out.println("输入错误");
return 0;
}
}
public static void main(String[] args) {
int result = f1();
System.out.println(result);
}
}
5) 方法中的参数:
a) 形参(形式参数):当方法被调用的时候,系统会临时为形参开辟存储空间,用来接收外界传入的数据,参与方法的执行,当方法执行结束以后,释放形参的存储空间(形参不存在了)。
b) 实参:当方法被调用的时候,把实参的值传递到形参中。
static void add(int num1,int num2){//形参
int sum = num1 + num2;
System.out.println("sum = "+sum);
}
main(){
int a=100,b=200;
add(a,b);//实参
}
实参和形参是一一对应的,把实参的值传递到形参中。
案例:Demo11
public class Demo11 {
//形参(形式参数):当方法被调用的时候,为形参临时的
//开辟存储空间,用来接收外界传入的数据,参与方法的
//执行,当方法执行结束以后,释放形参的存储空间。
//实参:当方法被调用的时候,把实参的值传递到形参中。
//实参和形参必须是一一对应的。
static void add(int num1,int num2){//形参
int sum = num1 + num2;
System.out.println("sum = "+sum);
}
public static void main(String[] args) {
int a = 300, b = 900;
add(a,b);//实参
}
}
import java.util.Scanner;
public class Demo12 {
//编写一个没有返回值带两个int类型参数的方法add(),
//void add(int num1,int num2):执行加法运算,
//并输入运算的结果
//在main方法中,创建一个Scanner对象,从控制台输入
//任意的两个整数作为实参,调用add()方法。
static void add(int num1,int num2){//形参
int sum = num1 + num2;
System.out.println("sum = "+sum);
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入第1个整数:");
int num1 = sc.nextInt();
System.out.println("请输入第2个整数:");
int num2 = sc.nextInt();
add(num1,num2);//实参
}
}
import java.util.Scanner;
public class Demo13 {
static void f1(int num1){
if(num1>=1){
int sum1=0,sum2=0;//sum1保存奇数累加之和;sum2保存偶数累加之和。
for(int i=1;i<=num1;i++){
if(i%2!=0){//奇数
sum1 = sum1 + i;
}else{//偶数
sum2 = sum2 + i;
}
}
System.out.println("奇数累加之和"+sum1);
System.out.println("偶数累加之和"+sum2);
}else{//num1<1
System.out.println("输入错误");
}
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数:");
int num = sc.nextInt();
f1(num);
}
}
6)Java中永远是值的传递,把实参中的值传递到形参中,对形参的任何修改对实参没有影响。
案例:Demo14
public class Demo14 {
static void updateNum(int num){//形参
num = 2000;
System.out.println("形参num="+num);
}
public static void main(String[] args) {
int num = 100;
System.out.println("调用updateNum()" +
"方法之前,实参num="+num);
updateNum(num);//实参
System.out.println("调用updateNum()" +
"方法之后,实参num="+num);
//在Java中,永远是值的传递。当方法调用的时候,把实参
//的值传递到形参中,对形参任何修改,对实参没有影响。
//所以实参num在调用updateNum()方法之前是100,调用
//了updateNum(num)方法以后,实参num的值还是100。
//形参的修改对实参没有影响。
}
}
7)带返回值带参数的方法
eg:
static int add(int num1,int num2){//形参
int sum = num1 + num2;
return sum;
}
main(){
int num1=100,num2=200;
int result = add(num1,num2);//实参
System.out.println("result="+result);
}
案例:Demo15
import java.util.Scanner;
public class Demo15 {
static int add(int num1,int num2){
int sum = num1 + num2;
return sum;
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入第1个整数:");
int num1 = sc.nextInt();
System.out.println("请输入第2个整数:");
int num2 = sc.nextInt();
int result = add(num1,num2);
System.out.println("result="+result);
}
} import java.util.Scanner; public class Demo16 {
//编写一个带int类型返回值带两个int类型参数的方法
//sub(),int sub(int a,int b),在sub方法中,
//执行减法运算,并返回运算的结果。
//在main方法中,从控制台输入任意的两个整数作为实参,
//调用sub()方法,并输出返回的结果。
static int sub(int a,int b){
int result = a-b;
return result;
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入第一个整数:");
int a = sc.nextInt();
System.out.println("请输入第二个整数:");
int b = sc.nextInt();
int result = sub(a,b);
System.out.println("result="+result);
}
}
Java语言基础(9)的更多相关文章
- Java学习总结(二)----Java语言基础
1. Java语言基础 2.1 关键字 定义:被java语言赋予特殊含义的单词 特点:关键字中的字母都为小写 用于定义数据类型的关键字 class,interface,byte,short,i ...
- java语言基础02
一.Java语言基础(常量的概述和使用)(掌握) 1:什么是常量 就是在程序的执行过程中其值不发生改变的量. 2:Java中常量的分类 (1):字面值常量 (2):自定义常量(面向对象部分讲解) 3: ...
- Java之--Java语言基础组成—数组
Java语言基础组成-数组 Java语言由8个模块构成,分别为:关键字.标识符(包名.类名.接口名.常量名.变量名等).注释.常量和变量.运算符.语句.函数.数组. 本片主要介绍Java中的数组,数组 ...
- Java之--Java语言基础组成—函数
Java语言基础组成-函数 Java语言由8个模块构成,分别为:关键字.标识符(包名.类名.接口名.常量名.变量名等).注释.常量和变量.运算符.语句.函数.数组. 本片主要介绍Java中的函数,函数 ...
- Java之--Java语言基础组成(关键字、标识符、注释、常量和变量、运算符)
Java语言基础组成-关键字.标识符.注释.常量和变量.运算符 Java语言由8个模块构成,分别为:1.关键字:2.标识符(包名.类名.接口名.常量名.变量名等):3.注释:4.常量和变量:5.运算符 ...
- Java语言基础(二) Java关键字
Java语言基础(二) Java关键字 Java关键字比较多,我就不列举出来了,只记录一些常用的小知识点: ①Java的关键字只有小写. ②then.sizeof都不是Java的关键字,熟悉C++的程 ...
- Java语言基础(九)
Java语言基础(九) 一.自增运算(++) 自减运算(--) i++ 就是将i+1再赋给 i i-- 是将i-1再赋给 i 对变量i,j来说,i++ 或++i 这里没什么区别,都是将i的值加1后,再 ...
- Java语言基础(八)
Java语言基础(八) 一.数学运算 + - * / % (1)凡是byte short char类型都按int类型的计算 看看上面的代码,为什么出错! 我已经将100转成byte类型,( ...
- Java语言基础(七)
Java语言基础(七) 今天在公司多呆了会,回来晚了 一.自动类型转换 在Java中,数据是可以转换的 例如可以将byte类型的赋给int类型的 这里希望你了解内存的变化,例如 在这里,我想你应该知 ...
- Java语言基础(六)
Java语言基础(六) 前一章提到的, BigDecimal, DecimalFormat等具体用法,这里就不在说了,网上有许多 一.下面让我们看一个例子(自由落体运动位移) 说明: (1).公式是 ...
随机推荐
- k8s 1.15.2 部署
目录 一.环境准备 二.软件安装 三.部署master节点 四.部署node节点 五.集群状态检测 一.环境准备 IP地址 节点角色 CPU Memory Hostname Docker versio ...
- 如何在picture上显示透明Label
- golang struct 转map 及 map[string]*Struct 初始化和遍历
package main import ( "encoding/json" "errors" "fmt" "reflect&quo ...
- js-object引用示例
function displayInfo(args){ var output=""; if(typeof args.name == "string"){ out ...
- libmkl 学习笔记
libmkl 学习笔记 1.libkml下载地址为: https://github.com/libkml/libkml/releases 这里下载1.3.0版本 2.编译与安装 mkdir build ...
- [转帖]国内拉取google kubernetes镜像
国内拉取google kubernetes镜像 2019年04月19日 01:19:03 willblog 阅读数 4231 标签: kubernetes 更多 个人分类: kubernetes ...
- java 基础(一)-实验楼
一.标识符:区分大小写由数字.大小写字母.$._ 组成,不能由数字开头.各种变量.方法和类等要素命名时使用的字符序列称.凡是自己可以起名字的地方都叫标识符.不可以使用关键字和保留字,但能包含关键字和保 ...
- ARST第四周打卡
Algorithm : 做一个 leetcode 的算法题 ////////////////////////////////////////////////////////////////////// ...
- Java开源网页抓取工具httpClient以及jsoup
网上看到不错的Java网页抓取工具和库 先记录一下 使用java开源工具httpClient及jsoup抓取解析网页数据
- linux下安装anconda3
Liunx下安装anconda3其实特变简单,只需这几步骤 1. 首先要到网上下载一个ancoda3的安装包.然后在上传到linux上面即可 3. 是不是特别简单呢?哈哈