導航:首頁 > 編程語言 > java查找數字

java查找數字

發布時間:2024-11-11 03:06:18

1. 用java語言編寫對整型數組進行二分查找的程序。

public class BinarySearchDemo {

public static void main(String[] args) {
int[] a = new int[]{1,5,7,9,11,18,23,48,69};
int point = new BinarySearchDemo().binarySearch(a, 23);

if(point == -1)
System.out.println("在數組中未查找到數23");
else
System.out.println("數字23是數組中第 " + (point + 1) + " 位數");

}

/**
* 二分法查找一個整數在整型數組中的位置
*
* 演算法思路:首先得到數組a的最小值和最大值的下標,分別是:low和high,接著求出值位於數組中間那個數的下標middle
* 然後再將這個middle對應的數組中的數和待查找的數num進行比較,如果相等,則表示已查找到,如果num < a[middle]
* 則說明num位於a[low]和a[middle]之間,於是將a[middle - 1]設為較大值,繼續求出此時對應的a[middle],
* 再進行比較,其他情況可依次類推。一直到low=high,如果此時還沒有在數組a中查找到,則說明該數組a中沒有值num,返回-1
*
* @param a 給定的整型數組
* @param num 待查找的數 num
*
* @return 返回整數num在數組a中的位置下標,如果未查找到則返回-1
* */
public int binarySearch(int[] a,int num){
int low = 0;
int high = a.length - 1;

while(low <= high){
int middle = (low + high) / 2;
if(num == a[middle])
return middle;
else if(num < a[middle])
high = middle - 1;
else
low = middle + 1;
}

return -1;
}

}

程序基本上就是這樣了,其中注釋中有詳細的解釋說明

2. java中如何查找數組中某個元素

public static void main(String[] args) {
//定義並初始化數組
int[] arr = {22,33,44,55,66,7,2,5,24};
//定義並初始化Scanner對象,用於獲取輸入鍵盤輸入的內容
Scanner scanner = new Scanner(System.in);
//輸出信息
System.out.print("請輸入需要查找的數字:");
//獲取鍵盤輸入要查找的數字
int target = scanner.nextInt();
//循環數組
for(int i = 0; i < arr.length; i++) {
//如果輸入的數字跟當前數組的元素的值相同
if(target == arr[i]) {
//輸入所在位置,從1開始
System.out.println(target + "位於數字的第" + (i + 1) + "位");
//結束
return;
}
}
//如果找不到的話就提示一下
System.out.println("數組中不存在數字:" + target);
}

3. java 檢查是不是數字

java 檢查是是不是數字:
可以用異常來做校驗
/**
* 判斷字元串是否是整數
*/
public static boolean isInteger(String value) {
try {
Integer.parseInt(value);
return true;
} catch (NumberFormatException e) {
return false;
}
}

/**
* 判斷字元串是否是浮點數
*/
public static boolean isDouble(String value) {
try {
Double.parseDouble(value);
if (value.contains("."))
return true;
return false;
} catch (NumberFormatException e) {
return false;
}
}

/**
* 判斷字元串是否是數字
*/
public static boolean isNumber(String value) {
return isInteger(value) || isDouble(value);
}

4. 我想用java正則匹配漢語數字,比如:零、一、二、二十二、三百三十三,等等,有人知道么

下面是一個代碼你可以看一下,答案就在其中
import java.util.regex.*;
public class Test {
public static void main(String[] args) {
String re0 = "[零一二三四五六七八九十百千]";
String re1 = "\\d+-\\d+-?\\d*-?\\d*|"+re0+"+-"+re0+"+-?"+re0+"*-?"+re0+"*";//存在 3-3(3-3-3、3-3-3-3)
String re2 = "\\d+號|"+re0+"+號";//存在3/三號
String re3 = "\\d+-\\d+-?\\d*-?\\d*號|"+re0+"+-"+re0+"+-?"+re0+"*-?"+re0+"*號";//存在3-33-3(3-3-3、3-3-3-3)號
String re4 = "\\d+號?[棟弄幢樓座]|"+re0+"+號?[棟弄幢樓座]";
String re10 = "[省市鄉縣村屯區巷街路道]$";//以村等結尾
String str1 = "香港吉祥二十號";
System.out.println(re1);
Pattern pattern = Pattern.compile(re2);
Matcher matcher = pattern.matcher(str1);
boolean rs = matcher.find();
System.out.println(rs);

}
}

閱讀全文

與java查找數字相關的資料

熱點內容
linuxboot修復 瀏覽:843
程序在線編譯系統的設計與實現 瀏覽:722
電腦c盤記錄存在哪個文件夾 瀏覽:155
演算法分析與設計替換方法 瀏覽:850
老程序員丟失手機 瀏覽:272
新世紀日本語pdf 瀏覽:85
基於單片機的數字示波器 瀏覽:36
登qq伺服器連接中什麼意思 瀏覽:436
表格宏命令 瀏覽:994
肯德基app設定在哪裡 瀏覽:472
蘋果電腦文件夾怎麼添加列印機 瀏覽:701
pythonswagger 瀏覽:235
作業打卡解壓素材 瀏覽:159
pdf導入ibooks 瀏覽:577
xps文件轉pdf 瀏覽:134
怎麼樣獲得命令方塊 瀏覽:899
安卓studio如何改主題 瀏覽:933
linux自動獲取ip命令行 瀏覽:208
做設計做程序員適合的電腦 瀏覽:778
網站有源碼和沒有源碼的區別 瀏覽:680