中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

java .net做網(wǎng)站能打開任何網(wǎng)站瀏覽器

java .net做網(wǎng)站,能打開任何網(wǎng)站瀏覽器,前端培訓(xùn)機構(gòu)出來的好找工作嗎,專業(yè)網(wǎng)站建設(shè)制作價格1.需求:(1)機票價格按照淡季旺季、頭等艙和經(jīng)濟艙收費、輸入機票原價、原價、月份和頭等艙或經(jīng)濟艙;(2)按照如下規(guī)則計算機票價格:旺季(5-10月)頭等艙9折,經(jīng)濟…

1.需求:(1)機票價格按照淡季旺季、頭等艙和經(jīng)濟艙收費、輸入機票原價、原價、月份和頭等艙或經(jīng)濟艙;(2)按照如下規(guī)則計算機票價格:旺季(5-10月)頭等艙9折,經(jīng)濟艙8.5折,淡季(11月到來年4月)頭等艙7折,經(jīng)濟艙6.5折

import java.util.Scanner;public class demo {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);// 提示用戶輸入機票原價System.out.print("請輸入機票原價:");double originalPrice = scanner.nextDouble();// 提示用戶輸入月份System.out.print("請輸入出行月份(1 - 12):");int month = scanner.nextInt();// 提示用戶輸入艙位類型System.out.print("請輸入艙位類型(頭等艙/經(jīng)濟艙):");String cabinClass = scanner.next();// 調(diào)用 calculatePrice 方法計算最終機票價格double finalPrice = calculatePrice(originalPrice, month, cabinClass);// 輸出最終機票價格System.out.println("最終機票價格為:" + finalPrice + " 元");scanner.close();}/*** 計算機票最終價格的方法* @param originalPrice 機票原價* @param month 出行月份* @param cabinClass 艙位類型* @return 最終機票價格*/public static double calculatePrice(double originalPrice, int month, String cabinClass) {double discount = 1.0;// 判斷是否為旺季(5 - 10 月)if (month >= 5 && month <= 10) {if ("頭等艙".equals(cabinClass)) {discount = 0.9; // 旺季頭等艙 9 折} else if ("經(jīng)濟艙".equals(cabinClass)) {discount = 0.85; // 旺季經(jīng)濟艙 8.5 折}} else {if ("頭等艙".equals(cabinClass)) {discount = 0.7; // 淡季頭等艙 7 折} else if ("經(jīng)濟艙".equals(cabinClass)) {discount = 0.65; // 淡季經(jīng)濟艙 6.5 折}}// 計算最終價格return originalPrice * discount;}
}

?

2.判斷101~200之間有多少個素數(shù),并輸出所有素數(shù)

public class demo {public static void main(String[] args) {int count = 0; // 用于統(tǒng)計素數(shù)的個數(shù)// 遍歷 101 到 200 之間的所有數(shù)for (int i = 101; i <= 200; i++) {if (isPrime(i)) { // 判斷當(dāng)前數(shù)是否為素數(shù)System.out.print(i + " "); // 輸出素數(shù)count++; // 素數(shù)個數(shù)加 1}}System.out.println("\n101~200 之間共有 " + count + " 個素數(shù)。");}// 判斷一個數(shù)是否為素數(shù)public static boolean isPrime(int num) {if (num <= 1) {return false; // 小于等于 1 的數(shù)不是素數(shù)}else if (num == 2) {return false; // 等于 2 的數(shù)不是素數(shù)}else if (num % 2==0) {return false; // 偶數(shù)不是素數(shù)}// 判斷是否能被 3 到 sqrt(num) 之間的數(shù)整除for (int i = 3; i <= Math.sqrt(num); i++) {if (num % i == 0) {return false; // 如果能被整除,則不是素數(shù)}}return true; // 否則是素數(shù)}
}

?

3.需求:(1)定義方法實現(xiàn)隨機產(chǎn)生一個5位的驗證碼;(2)驗證碼格式:(a)長度為5;(b)前四位是大寫字母或者小寫字母;(c)最后一位是數(shù)字

import java.util.Random;public class demo {public static void main(String[] args) {String code = generateVerificationCode(); // 生成驗證碼System.out.println("生成的驗證碼是: " + code); // 輸出驗證碼}// 生成驗證碼的方法public static String generateVerificationCode() {Random random = new Random();StringBuilder code = new StringBuilder();// 生成前四位字母for (int i = 0; i < 4; i++) {// 隨機選擇大寫字母或小寫字母boolean isUpperCase = random.nextBoolean(); // 隨機決定是否大寫char letter;if (isUpperCase) {letter = (char) (random.nextInt(26) + 'A'); // 生成大寫字母} else {letter = (char) (random.nextInt(26) + 'a'); // 生成小寫字母}code.append(letter); // 將字母添加到驗證碼中}// 生成最后一位數(shù)字char digit = (char) (random.nextInt(10) +'0'); // 生成數(shù)字字符code.append(digit); // 將數(shù)字添加到驗證碼中return code.toString(); // 返回生成的驗證碼}
}

代碼說明

  1. generateVerificationCode?方法

    • 使用?Random?類生成隨機數(shù)。

    • 使用?StringBuilder?來構(gòu)建驗證碼字符串。

    • 前四位是隨機生成的大寫字母或小寫字母:

      • random.nextBoolean()?隨機決定生成大寫字母還是小寫字母。

      • random.nextInt(26)?生成 0 到 25 的隨機數(shù),加上?'A'?或?'a'?的 ASCII 值,得到隨機字母。

    • 最后一位是隨機生成的數(shù)字:

      • random.nextInt(10)?生成 0 到 9 的隨機數(shù),加上?'0'?的 ASCII 值,得到數(shù)字字符。

  2. 主程序

    • 調(diào)用?generateVerificationCode?方法生成驗證碼。

    • 輸出生成的驗證碼。

?char digit = (char) (random.nextInt(10) + '0') 如果這一句不加'0',會怎么樣

如果去掉?'0',代碼會變成:

char digit = (char) (random.nextInt(10));

這行代碼的作用是將?random.nextInt(10)?生成的隨機整數(shù)(0 到 9)強制轉(zhuǎn)換為?char?類型。但是,這樣的轉(zhuǎn)換會導(dǎo)致?數(shù)字字符?變成?ASCII 控制字符,而不是我們期望的?'0'?到?'9'?的數(shù)字字符。


為什么需要加?'0'

  • random.nextInt(10):生成一個 0 到 9 的隨機整數(shù)。

  • '0':是字符?'0'?的 ASCII 值(48)。

  • random.nextInt(10) + '0'

    • 將隨機整數(shù)加上?'0'?的 ASCII 值,得到?'0'?到?'9'?的 ASCII 值。

    • 例如:

      • 如果?random.nextInt(10)?生成?0,則?0 + '0'?等于?48,對應(yīng)字符?'0'。

      • 如果生成?5,則?5 + '0'?等于?53,對應(yīng)字符?'5'。

      • 如果生成?9,則?9 + '0'?等于?57,對應(yīng)字符?'9'。

  • 強制轉(zhuǎn)換為?char:將 ASCII 值轉(zhuǎn)換為對應(yīng)的字符。


如果不加?'0'?會發(fā)生什么?

如果不加?'0',代碼會直接將 0 到 9 的整數(shù)轉(zhuǎn)換為對應(yīng)的 ASCII 字符。ASCII 表中,0 到 9 的整數(shù)值對應(yīng)的是?控制字符,而不是數(shù)字字符。

  • ASCII 表部分內(nèi)容

    整數(shù)值字符描述
    0'\u0000'空字符(NULL)
    1'\u0001'標(biāo)題開始(SOH)
    2'\u0002'文本開始(STX)
    .........
    9'\u0009'水平制表符(TAB)
  • 結(jié)果

    • 如果?random.nextInt(10)?生成?0,則?(char) 0?是空字符('\u0000')。

    • 如果生成?5,則?(char) 5?是控制字符('\u0005')。

    • 這些字符是不可見的,或者顯示為亂碼。


示例代碼

import java.util.Random;public class Test {public static void main(String[] args) {Random random = new Random();// 不加 '0'char digit1 = (char) (random.nextInt(10));System.out.println("不加 '0' 的結(jié)果: " + digit1);// 加 '0'char digit2 = (char) (random.nextInt(10) + '0');System.out.println("加 '0' 的結(jié)果: " + digit2);}
}
  • 輸出結(jié)果

    不加 '0' 的結(jié)果: (不可見字符或亂碼)
    加 '0' 的結(jié)果: 5

總結(jié)

  • 加?'0':將 0 到 9 的整數(shù)轉(zhuǎn)換為對應(yīng)的數(shù)字字符('0'?到?'9')。

  • 不加?'0':將 0 到 9 的整數(shù)轉(zhuǎn)換為 ASCII 控制字符,這些字符不可見或顯示為亂碼。

?

Random random = new Random();?

在 Java 中,Random random = new Random();?這行代碼的作用是創(chuàng)建一個?Random?類的對象,用于生成偽隨機數(shù)。下面詳細解釋這行代碼涉及的各個部分:

1.?Random?類

Random?類是 Java 標(biāo)準(zhǔn)庫中?java.util?包下的一個類,它提供了多種方法用于生成不同類型的偽隨機數(shù)。所謂偽隨機數(shù),是指這些數(shù)看起來是隨機的,但實際上是由一個確定的算法根據(jù)初始種子(seed)生成的,只要種子相同,生成的隨機數(shù)序列就是相同的。

2.?new Random()

  • new?是 Java 中用于創(chuàng)建對象的關(guān)鍵字。當(dāng)使用?new?時,Java 會在內(nèi)存中為對象分配空間,并調(diào)用相應(yīng)類的構(gòu)造函數(shù)來初始化對象。
  • Random()?是?Random?類的一個構(gòu)造函數(shù)。如果使用無參構(gòu)造函數(shù)?Random()?來創(chuàng)建?Random?對象,Java 會使用當(dāng)前系統(tǒng)時間的毫秒數(shù)作為種子來初始化隨機數(shù)生成器,這樣每次運行程序時,由于系統(tǒng)時間不同,生成的隨機數(shù)序列通常也會不同。

3.?Random random

這部分聲明了一個名為?random?的變量,其類型為?Random。變量就像是一個容器,用于存儲對象的引用。通過這個變量?random,我們可以調(diào)用?Random?類提供的各種方法來生成隨機數(shù)。

總結(jié)

Random random = new Random();?這行代碼創(chuàng)建了一個?Random?對象,通過這個對象可以方便地調(diào)用?Random?類的方法來生成各種類型的偽隨機數(shù),滿足不同的編程需求,比如模擬隨機事件、生成隨機密碼等。

?boolean isUpperCase = random.nextBoolean();

在 Java 中,boolean isUpperCase = random.nextBoolean();?這行代碼主要完成了兩件事:一是調(diào)用?Random?類的?nextBoolean()?方法生成一個隨機的布爾值;二是將這個隨機布爾值存儲到一個名為?isUpperCase?的布爾類型變量中。下面詳細解釋這行代碼:

1.?Random?對象

在執(zhí)行這行代碼之前,通常會有類似?Random random = new Random();?的代碼,它創(chuàng)建了一個?Random?類的對象?randomRandom?類是 Java 標(biāo)準(zhǔn)庫?java.util?包中的一個類,用于生成偽隨機數(shù)。借助這個對象,可以調(diào)用?Random?類提供的各種方法來生成不同類型的隨機數(shù)。

2.?nextBoolean()?方法

nextBoolean()?是?Random?類中的一個方法,其作用是生成一個隨機的布爾值。該方法會等概率地返回?true?或者?false,也就是說,返回?true?和?false?的可能性均為 50%。

3.?boolean isUpperCase

這部分聲明了一個名為?isUpperCase?的變量,其類型為?boolean。在 Java 里,boolean?類型的變量只能存儲兩個值:true?或者?false。

4. 代碼整體含義

整行代碼?boolean isUpperCase = random.nextBoolean();?的意思是:調(diào)用?random?對象的?nextBoolean()?方法生成一個隨機的布爾值,然后將這個布爾值賦值給變量?isUpperCase。此后,就可以在代碼中使用?isUpperCase?變量進行條件判斷等操作。

letter = (char) (random.nextInt(26) + 'A');?

letter = (char) (random.nextInt(26) + 'A');?這行代碼的主要目的是生成一個隨機的大寫英文字母,并將其賦值給變量?letter。下面我們逐步拆解這行代碼,詳細解釋其具體含義:

1.?random?對象

在執(zhí)行這行代碼之前,通常會有類似?Random random = new Random();?的代碼,它創(chuàng)建了一個?Random?類的對象?random。Random?類是 Java 標(biāo)準(zhǔn)庫?java.util?包中的一個類,用于生成偽隨機數(shù)。通過這個對象,我們可以調(diào)用?Random?類提供的各種方法來生成不同類型的隨機數(shù)。

2.?random.nextInt(26)

nextInt(int bound)?是?Random?類的一個方法,它的作用是生成一個大于等于 0 且小于指定邊界?bound?的隨機整數(shù)。在這行代碼中,bound?的值為 26,所以?random.nextInt(26)?會生成一個范圍在 0(包含)到 26(不包含)之間的隨機整數(shù),即可能的取值為 0、1、2、...、25。

3.?'A'

在 Java 中,字符類型?char?本質(zhì)上是一個 16 位的無符號整數(shù),它可以表示 Unicode 字符集中的字符。每個字符都對應(yīng)一個唯一的 Unicode 碼點。字符?'A'?的 Unicode 碼點是 65,'B'?是 66,以此類推,'Z'?是 90。

4.?random.nextInt(26) + 'A'

將?random.nextInt(26)?生成的隨機整數(shù)(范圍是 0 - 25)與字符?'A'?的 Unicode 碼點(65)相加。這樣得到的結(jié)果范圍是 65(即?'A'?的碼點)到 90(即?'Z'?的碼點)之間的整數(shù)。例如,如果?random.nextInt(26)?生成的隨機數(shù)是 0,那么?0 + 'A'?就等于 65;如果生成的隨機數(shù)是 25,那么?25 + 'A'?就等于 90。

5.?(char)

這是一個強制類型轉(zhuǎn)換操作符。由于?random.nextInt(26) + 'A'?的結(jié)果是一個?int?類型的整數(shù),而我們需要的是一個字符,所以使用?(char)?將這個整數(shù)強制轉(zhuǎn)換為?char?類型。這樣,得到的就是一個對應(yīng)的大寫英文字母。

StringBuilder code = new StringBuilder();??

在 Java 中,StringBuilder code = new StringBuilder();?這行代碼的作用是創(chuàng)建一個?StringBuilder?類的對象,并將其引用賦值給名為?code?的變量。下面詳細解釋這行代碼涉及的各個部分:

1.?StringBuilder?類

StringBuilder?是 Java 標(biāo)準(zhǔn)庫中?java.lang?包下的一個類,用于處理可變的字符序列。與?String?類不同,String?對象是不可變的,一旦創(chuàng)建,其內(nèi)容就不能被修改,如果對?String?進行拼接、刪除等操作,實際上是創(chuàng)建了一個新的?String?對象;而?StringBuilder?對象的內(nèi)容是可以動態(tài)改變的,在進行字符串拼接、插入、刪除等操作時,不會創(chuàng)建新的對象,而是直接在原對象的基礎(chǔ)上進行修改,因此在需要頻繁修改字符串內(nèi)容的場景下,使用?StringBuilder?效率更高。

2.?new StringBuilder()

  • new?是 Java 中用于創(chuàng)建對象的關(guān)鍵字。當(dāng)使用?new?時,Java 會在內(nèi)存中為對象分配空間,并調(diào)用相應(yīng)類的構(gòu)造函數(shù)來初始化對象。
  • StringBuilder()?是?StringBuilder?類的無參構(gòu)造函數(shù),使用這個構(gòu)造函數(shù)創(chuàng)建的?StringBuilder?對象初始容量為 16 個字符,初始內(nèi)容為空。

3.?StringBuilder code

這部分聲明了一個名為?code?的變量,其類型為?StringBuilder。變量就像是一個容器,用于存儲對象的引用。通過這個變量?code,我們可以調(diào)用?StringBuilder?類提供的各種方法來對其內(nèi)部的字符序列進行操作,例如追加字符、插入字符、刪除字符等。

return code.toString();?

return code.toString();?這行代碼在 Java 里是一個方法返回語句,它主要做了兩件事:一是調(diào)用?code?對象的?toString()?方法,把?code?對象轉(zhuǎn)換為字符串;二是將轉(zhuǎn)換后的字符串作為方法的返回值返回。下面詳細解釋這行代碼:

1.?code?對象

從前面的代碼可知,code?通常是一個?StringBuilder?類型的對象。StringBuilder?是 Java 標(biāo)準(zhǔn)庫中用于處理可變字符序列的類,在需要頻繁修改字符串內(nèi)容(如拼接、插入、刪除字符等)時,使用?StringBuilder?能比直接使用?String?類獲得更高的性能。

2.?toString()?方法

toString()?是?StringBuilder?類從?Object?類繼承并進行了重寫的方法。Object?類是 Java 中所有類的基類,每個類都有?toString()?方法,不過不同類對其有不同的實現(xiàn)。在?StringBuilder?類中,toString()?方法的作用是將?StringBuilder?對象內(nèi)部存儲的字符序列轉(zhuǎn)換為一個不可變的?String?對象。這是因為在很多場景下,我們最終需要的是一個標(biāo)準(zhǔn)的?String?類型的數(shù)據(jù),例如將結(jié)果輸出、傳遞給其他只接受?String?類型參數(shù)的方法等。

3.?return?語句

return?是 Java 中的一個關(guān)鍵字,用于從方法中返回一個值,并終止方法的執(zhí)行。當(dāng)程序執(zhí)行到?return?語句時,會將?return?后面表達式的值作為方法的返回值返回給調(diào)用該方法的地方。

?

http://www.risenshineclean.com/news/7885.html

相關(guān)文章:

  • 紅酒營銷型網(wǎng)站建設(shè)seo創(chuàng)業(yè)
  • 阿里云速美建站2345導(dǎo)航網(wǎng)址
  • 單純做seo能否提升網(wǎng)站流量如何免費開自己的網(wǎng)站
  • 建筑網(wǎng)站設(shè)置工資單人換了怎么換寧波正規(guī)seo推廣
  • 營銷型平臺網(wǎng)站建設(shè)培訓(xùn)方案
  • 門戶網(wǎng)站如何推廣互聯(lián)網(wǎng)推廣是干什么的
  • 營銷網(wǎng)站建設(shè)規(guī)劃淘寶指數(shù)查詢
  • 廊坊百度網(wǎng)站排名大數(shù)據(jù)精準(zhǔn)營銷的策略
  • 重慶網(wǎng)站建設(shè)仿站資源網(wǎng)
  • 優(yōu)惠券網(wǎng)站要怎么做的網(wǎng)絡(luò)廣告宣傳平臺
  • 廣州網(wǎng)站建設(shè)58培訓(xùn)課程網(wǎng)站
  • 動態(tài)網(wǎng)站建設(shè)實訓(xùn)內(nèi)容太原網(wǎng)絡(luò)營銷公司
  • 水果行業(yè)為什么做網(wǎng)站重慶網(wǎng)站關(guān)鍵詞排名優(yōu)化
  • 今日國內(nèi)新聞簡訊seo云優(yōu)化
  • 網(wǎng)站的策劃分析溫州seo招聘
  • cms網(wǎng)站建設(shè)有多少條數(shù)據(jù)正規(guī)的代運營公司
  • 行業(yè)門戶網(wǎng)站建設(shè)方案書網(wǎng)絡(luò)營銷推廣8種方法
  • 3d建站app開發(fā)平臺
  • 柳州網(wǎng)站建設(shè)工作室營銷方式和手段有哪些
  • 網(wǎng)站建設(shè)推進會講話稿網(wǎng)址搜索ip地址
  • 網(wǎng)站怎么做優(yōu)化步驟重慶網(wǎng)站seo好不好
  • 做地方門戶網(wǎng)站百度seo最新算法
  • 開發(fā)一個網(wǎng)站做爬蟲西安百度競價托管公司
  • 做一家網(wǎng)站費用平臺優(yōu)化
  • wordpress做個游戲旺道seo營銷軟件
  • cms網(wǎng)站建設(shè)方案seo教程培訓(xùn)班
  • 知名排版網(wǎng)站seo推廣軟
  • 百度網(wǎng)站的設(shè)計風(fēng)格上海外貿(mào)seo
  • 炫酷個人網(wǎng)站鎮(zhèn)江網(wǎng)站建設(shè)
  • 展示型建站模板平臺東莞網(wǎng)站推廣的公司