相思一夜梅花發,忽到窗前疑是君。
adult-art-artistic-attractive-235462.jpg
概述
Java
是在IT
行業廣泛使用的最流行的編程語言之一。它簡單,健壯,可幫助我們重用代碼。在本文中,讓我們看一些了解Java
基礎的應用程序。
入門的Java程序
計算機程序
編寫一個Java
程序來執行基本的計算器操作。
當你考慮使用計算器時,就會想到加,減,乘,除等運算。讓我們借助以下程序來實現基本的計算器操作。
package com.niocoder;
import java.util.Scanner;
/**
* Created by zhenglongfei on 2020/4/21
*
* @VERSION 1.0
*/
public class _01Calculator {
public static void main(String[] args) {
Scanner param = new Scanner(System.in);
System.out.print("請輸入第一個數字:");
double first = param.nextDouble();
System.out.print("請輸入第二個數字:");
double second = param.nextDouble();
System.out.print("請輸入運算符 (+, -, *, /): ");
char operator = param.next().charAt(0);
double result;
//switch case for each of the operations
switch (operator) {
case '+':
result = first + second;
break;
case '-':
result = first - second;
break;
case '*':
result = first * second;
break;
case '/':
result = first / second;
break;
default:
// operator doesn't match any case constant (+, -, *, /)default:
System.out.println("Error! operator is not correct");
return;
}
System.out.printf("%.1f %c %.1f = %.1f", first, operator, second, result);
}
}
執行上述程序時,輸出如下所示:
請輸入第一個數字:10
請輸入第二個數字:10
請輸入運算符 (+, -, *, /): +
10.0 + 10.0 = 20.0
使用遞歸的階乘程序
編寫一個Java
程序來計算一個數字的階乘。
數字的階乘是所有小于或等于該數字的正數的乘積。n
的階乘由n!
表示。現在,讓我們編寫一個程序,并使用遞歸查找數字的階乘。
package com.niocoder;
import java.util.Scanner;
/**
* Created by zhenglongfei on 2020/4/21
*
* @VERSION 1.0
*/
public class _02Factorial {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("請輸入一個數字:");
//Stored the entered value in variable
int num = scanner.nextInt();
//Called the user defined function fact
int factorial = fact(num);
System.out.println("輸入數字的階乘是: " + factorial);
}
static int fact(int number) {
if (number == 1) {
return 1;
}
return number * fact(number - 1);
}
}
執行上面的程序時,您將獲得一個數字的階乘,如下所示:
請輸入一個數字:12
輸入數字的階乘是: 479001600
斐波納契數列的程序
編寫一個Java
程序來計算斐波那契數列直到n
個數字。
它是一個級數,其中下一項是前兩項之和。例如:0 1 1 2 3 5 8 13……讓我們編寫一個Java
程序來計算斐波那契數列。
package com.niocoder;
import java.util.Scanner;
/**
* Created by zhenglongfei on 2020/4/21
*
* @VERSION 1.0
*/
public class _03Fibonacci {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("請輸入一個數字:");
//Stored the entered value in variable
int num = scanner.nextInt();
int first = 0, second = 1;
System.out.print(num + ":");
while (first < num) {
System.out.print(first + "+");
int sum = first + second;
first = second;
second = sum;
}
}
}
執行上述代碼后,輸出如下所示:
請輸入一個數字:100
100:0+1+1+2+3+5+8+13+21+34+55+89+
字符串的回文程序
編寫一個Java
程序來找出給定的字符串是否是回文。
回文是一個數字、字符串或序列,即使你顛倒了順序,它們也是一樣的。例如,RACECAR
,如果向后拼寫將與RACECAR
相同。
package com.niocoder;
import java.util.Scanner;
/**
* Created by zhenglongfei on 2020/4/21
*
* @VERSION 1.0
*/
public class _04Palindrome {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("請輸入一個字符串: ");
String str = sc.nextLine();
checkPalindrome(str);
}
private static void checkPalindrome(String str) {
boolean flag = true;
int length = str.length();
for (int i = 0; i <= length / 2; i++) {
if (str.charAt(i) != str.charAt(length - i - 1)) {
flag = false;
break;
}
}
System.out.println(str + " 是否回文 = " + flag);
}
}
運行代碼時,它將檢查給定的字符串是否是回文,如下所示:
請輸入一個字符串: abab
abab 是否回文 = false
請輸入一個字符串: abba
abba 是否回文 = true
圖案程序
用Java
編寫程序打印菱形圖案。
在這里,使用for
循環來打印菱形圖案。
package com.niocoder;
import java.util.Scanner;
/**
* Created by zhenglongfei on 2020/4/21
*
* @VERSION 1.0
*/
public class _05DiamondPattern {
public static void main(String[] args) {
int n, i, j, space = 1;
System.out.print("請輸入行數: ");
Scanner s = new Scanner(System.in);
n = s.nextInt();
space = n - 1;
for (j = 1; j <= n; j++) {
for (i = 1; i <= space; i++) {
System.out.print(" ");
}
space--;
for (i = 1; i <= 2 * j - 1; i++) {
System.out.print("*");
}
System.out.println("");
}
space = 1;
for (j = 1; j <= n - 1; j++) {
for (i = 1; i <= space; i++) {
System.out.print(" ");
}
space++;
for (i = 1; i <= 2 * (n - j) - 1; i++) {
System.out.print("*");
}
System.out.println("");
}
}
}
輸出
請輸入行數: 5
*
***
*****
*******
*********
*******
*****
***
*
字符串反轉程序
編寫一個Java程序來反轉給定字符串中的字母。
這個Java
程序會反轉用戶輸入的字符串中存在的字母。例如,“ Hello People
”將被稱為“ olleH elpoeP
”。讓我們使用Java
來實現相同的功能。
package com.niocoder;
/**
* Created by zhenglongfei on 2020/4/21
*
* @VERSION 1.0
*/
public class _06Stringreverse {
public static void main(String[] args) {
String str = "Welcome To niocoder";
String[] strArray = str.split(" ");
for (String temp : strArray) {
System.out.println(temp);
}
for (int i = 0; i < 3; i++) {
char[] s1 = strArray[i].toCharArray();
for (int j = s1.length - 1; j >= 0; j--) {
System.out.print(s1[j]);
}
System.out.print(" ");
}
}
}
上面程序的輸出如下所示:
Welcome
To
niocoder
emocleW oT redocoin
鏡像程序
編寫一個Java程序來檢查給定的數組是否為鏡像數組。
package com.niocoder;
/**
* Created by zhenglongfei on 2020/4/21
*
* @VERSION 1.0
*/
public class _07MirrorInverse {
public static void main(String[] args) {
int arr[] = {3,4,2,0,1};
if (isMirrorInverse(arr))
System.out.println("Yes");
else
System.out.println("No");
}
static boolean isMirrorInverse(int arr[]) {
for (int i = 0; i < arr.length; i++) {
if (arr[arr[i]] != i)
return false;
}
return true;
}
}
輸出
Yes