java控制流语句,Java基本语句与控制流

IF 语句

public class Main {

public static void main(String[] args) {

int monthNumber = 5;

if (monthNumber >= 1 && monthNumber <=3) {

System.out.println("You're in Quarter 1");

}

else if (monthNumber >= 4 && monthNumber <=6) {

System.out.println("You're in Quarter 2");

}

else {

System.out.println("You're not in the first half of the year!");

}

String month ="February";

if (month.equals("February")) {

System.out.println("It's the second month!");

}

}

}

Switch语句(int)

import java.io.BufferedReader;

import java.io.InputStreamReader;

public class SwitchWithInts {

public static void main(String[] args) {

String input = getInput("Enter a number between 1 and 12: ");

int month = Integer.parseInt(input); //只所以转换成Int是因为在Java 6.0的时候 switch 语句只能用在integers,shorts,bytes,以及Enums.

switch (month) {

case 1:

System.out.println("The month is January");

break; //如果去掉break,语句会继续运行下去

case 2:

System.out.println("The month is February");

break;

case 3:

System.out.println("The month is March");

break;

default:

System.out.println("You chose another month");

break;

}

}

private static String getInput(String prompt) {

BufferedReader stdin = new BufferedReader(

new InputStreamReader(System.in));

System.out.print(prompt);

System.out.flush();

try {

return stdin.readLine();

} catch (Exception e) {

return "Error: " + e.getMessage();

}

}

}

Switch语句(枚举)

新建一个Month 类/** * Created by Haseo on 5/30/2015. */ public enum Month { JANUARY,FEBRUARY,MARCH; } 修改语句 public class SwitchWithEnums {

public static void main(String[] args) {

Month month = Month.FEBRUARY;

switch(month) {

case JANUARY:

System.out.println("The month first month");

break;

case FEBRUARY:

System.out.println("The month second month");

break;

case MARCH:

System.out.println("The month third month");

}

}

}

循环

public class Main {

static private String[] months =

{"January", "February", "March",

"April", "May", "June",

"July", "August", "September",

"October", "November", "December"};

public static void main(String[] args) {

for (int i = 0; i

System.out.println(months[i]);

}

//for each

for (String month:months){

System.out.println(month);

}

int counter = 0;

while (counter < months.length){

System.out.println(months[counter]);

counter++;

}

do {

System.out.println(months[counter]);

counter++;

} while (counter < months.length);

}

}

重构方法

public class Main {

public static void main(String[] args) {

doSomething();

int top = 10;

for (int i = 0; i

System.out.println("the value is "+i);

}

}

private static void doSomething (){

System.out.println("This method has been called");

}

}

选中需要重构的语句块,然后在菜单中重构为方法

Refactor2Method.jpg

结果public class Main {

public static void main(String[] args) {

doSomething();

loopMe();

}

private static void loopMe() {

int top = 10;

for (int i = 0; i <top ; i++) {

System.out.println("the value is "+i);

}

}

private static void doSomething (){

System.out.println("This method has been called");

}

} ** 重构方法(带参数)**

以我们前面的计算器为例(Java开发环境安装及基础语句),选择代码段,然后重构

MethodArg.png

结果如下public static void main(String[] args) { String s1 = getInput("Enter a numeric value: "); String s2 = getInput("Enter a numeric value: ");

double result = addTwoValues(s1, s2);

System.out.println("The answer is " + result);

}

private static double addTwoValues(String s1, String s2) {

double d1 = Double.parseDouble(s1);

double d2 = Double.parseDouble(s2);

return d1 + d2;

}

** 定义一个可以无限传入参数的方法**

import java.io.*;

public class Calculator {

public static void main(String[] args) {

String s1 = getInput("Enter a numeric value: ");

String s2 = getInput("Enter a numeric value: ");

double result = addTwoValues(s1, s2);

System.out.println("The answer is " + result);

double resultOfMultiple =addMultipleValues(1,2,3,4,5);

System.out.println("The answer from multiple values is " + resultOfMultiple);

}

private static double addTwoValues(String s1, String s2) {

double d1 = Double.parseDouble(s1);

double d2 = Double.parseDouble(s2);

return d1 + d2;

}

private static String getInput(String prompt) {

BufferedReader stdin = new BufferedReader(

new InputStreamReader(System.in));

System.out.print(prompt);

System.out.flush();

try {

return stdin.readLine();

} catch (Exception e) {

return "Error: " + e.getMessage();

}

}

//定义一个可以无限传入参数的方法

private static double addMultipleValues(double... values) {

double result = 0d;

for (double d : values) {

result += d;

}

return result;

}

}

重载

public class Overloading {

public static void main(String[] args){

int value1 = 5 ;

int value2 = 10 ;

int value3 = 15;

int result = addValues(value1,value2,value3);

System.out.println("The result is " + result);

String string1 = "10";

String string2 = "25";

int result2 = addValues(string1,string2);

System.out.println("The result is "+ result2);

}

private static int addValues(int int1,int int2){

return int1 + int2;

}

private static int addValues(int int1,int int2, int int3){

return int1+int2+int3;

}

private static int addValues(String val1,String val2 ){

int value1 = Integer.parseInt(val1);

int value2 = Integer.parseInt(val2);

return value1+value2;

}

}

简单计算器V2

import java.io.*;

public class Calculator2 {

public static void main(String[] args) {

String s1 = getInput("Enter a numeric value: ");

String s2 = getInput("Enter a numeric value: ");

String op = getInput("Enter 1=Add, 2=Subtract , 3=Multiply, 4=Divide : ");

int opInt = Integer.parseInt(op);

double result = 0;

switch (opInt){

case 1:

result = addValues(s1,s2);

break;

case 2:

result = subtractValues(s1,s2);

break;

case 3:

result = multiplyValues(s1,s2);

break;

case 4:

result = divideValues(s1,s2);

break;

default:

System.out.println("You entered an incorrect value:");

return;

}

System.out.println("The answer is " + result);

}

private static double addValues(String s1, String s2) {

double d1 = Double.parseDouble(s1);

double d2 = Double.parseDouble(s2);

return d1 + d2;

}

private static double subtractValues(String s1, String s2) {

double d1 = Double.parseDouble(s1);

double d2 = Double.parseDouble(s2);

return d1 - d2;

}

private static double multiplyValues(String s1, String s2) {

double d1 = Double.parseDouble(s1);

double d2 = Double.parseDouble(s2);

return d1 * d2;

}

private static double divideValues(String s1, String s2) {

double d1 = Double.parseDouble(s1);

double d2 = Double.parseDouble(s2);

return d1 / d2;

}

private static String getInput(String prompt) {

BufferedReader stdin = new BufferedReader(

new InputStreamReader(System.in));

System.out.print(prompt);

System.out.flush();

try {

return stdin.readLine();

} catch (Exception e) {

return "Error: " + e.getMessage();

}

}

}

参考资料

http://docs.oracle.com/javase/8/docs/api/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值