《JAVA程序設計》_第七周學習總結

一、學習內容

1.String類——8,1知識

  • Java專門提供了用來處理字符序列的String類。String類在java.lang包中,由于java.lang包中的類被默認引入,因此程序可以直接使用String類。
  • 需要注意的是Java把String類聲明為final類,因此用戶不能擴展String類,即String類不可以有子類。
  • 構造String對象
    • 常量對象:字符串常量對象是用雙引號括起的字符序列,例如:"你好"、"12.97"、"boy"等。Java把用戶程序中的String常量放入常量池。因為String常量是對象,所以也有自己的引用和實體。
    • String對象:可以使用String類聲明對象并創建對象,例如:
    String  s = new String("we are students");
    String  t = new String("we are students");
    • 對象變量s中存放著引用,表明自己的實體的位置,即new 運算符首先分配內存空間并在內存空間中放入字符序列,然后計算出引用。
    • 另外,用戶無法輸出String對象的引用:Syste.out.println(s);。輸出的是對象的實體,即字符序列we are students
    • 也可以用一個已創建的String對象創建另一個String對象,如:
    String tom = new String(s);
  • String類還有兩個較常用的構造方法。
    • String (char a[])用一個字符數組a創建一個String對象,如:
    char a[] = {'J','a','v','a'};
    String s = new String(a);

    過程相當于

    String s = new String("Java");
    • String(char a[],int startIndex,int count)
      提取字符數組a中的一部分字符創建一個String對象,參數startIndex和count分別指定在a中提取字符的起始位置和從該位置開始截取的字符個數,如:
    ?char a[] = {'零','壹','貳','叁','肆','伍','陸','柒','捌','玖'};String s = new String(a,2,4);

    相當于

    ?String s = new String("貳叁肆伍");

正則表達式

  • 正則表達式是一個String對象的字符序列,該字符序列中含有具有特殊意義字符,這些特殊字符稱做正則表達式中的元字符。比如,"\dcat"中的\d就是有特殊意義的元字符,代表0到9中的任何一個,"0cat","1cat","2cat",…,"9cat"都是和正則表達式"\dcat"匹配的字符序列。
  • 在正則表達式中可以用方括號括起若干個字符來表示一個元字符,該元字符代表方括號中的任何一個字符。例如String regex = "[159]ABC",那么"1ABC"、"5ABC"和"9ABC"都是和正則表達式regex匹配的字符序列。例如,[abc]:代表a、b、c中的任何一個;[^abc]:代表除了a、b、c以外的任何字符;[a-zA-Z]:代表英文字母(包括大寫和小寫)中的任何一個。
  • String對象調用public String replaceAll(String regex,String replacement)方法返回一個新的String對象,這個新的String對象的字符序列是把當前String對象的字符序列中所有和參數regex匹配的子字符序列,用參數replacement的字符序列替換后得到字符序列。
  • public String[] split(String regex)使用參數指定的正則表達式regex做為分隔標記分解出其中的單詞,并將分解出的單詞存放在字符串數組中。例如,對于字符串str String str = "1949年10月1日是中華人民共和國成立的日子";如果準備分解出全部由數字字符組成的單詞,就必須用非數字字符串做為分隔標記,因此,可以使用正則表達式:String regex="\\D+";做為分隔標記分解出str中的單詞:String digitWord[]=str.split(regex);那么,digitWord[0]、digitWord[1]和digitWord[2]就分別是“1949”、“10”和“1”。

    2.StringTokenizer類 ——8.2知識

  • StringTokenizer類在java.util包中,有兩個常用的構造方法:
    • StringTokenizer(String s):為String對象s構造一個分析器。使用默認的分隔標記,即空格符、換行符、回車符、Tab符、進紙符做分隔標記。
    • StringTokenizer(String s, String delim為String對象s構造一個分析器。參數delim的字符序列中的字符的任意排列被作為分隔標記。
  • StringTokenizer對象稱作一個字符串分析器可以使用下列方法:
    • nextToken():逐個獲取字符串中的語言符號(單詞),字符串分析器中的負責計數的變量的值就自動減一 。
    • hasMoreTokens():只要字符串中還有語言符號,即計數變量的值大于0,該方法就返回true,否則返回false。
    • countTokens():得到分析器中計數變量的值

3.Scanner類——8.3知識

  • scanner將空格做為分隔標記來解析字符序列中的單詞,具體解析操作:
    • scanner調用next()方法依次返回NBA中的單詞,如果NBA最后一個單詞已被next()方法返回,scanner調用hasNext()將返回false,否則返回true。

    • 對于被解析的字符序列中的數字型的單詞,比如618,168.98等,scanner可以用nextInt()或nextDouble()方法來代替next()方法,即scanner可以調用nextInt()或nextDouble()方法將數字型單詞轉化為int或double數據返回。

    • 如果單詞不是數字型單詞,scanner調用nextInt()或nextDouble()方法將發生InputMismatchException異常,在處理異常時可以調用next()方法返回該非數字化單詞。

  • Scanner對象可以調用 useDelimiter(正則表達式); 方法將一個正則表達式作為分隔標記,即和正則表達式匹配的字符串都是分隔標記。

4.StringBuffer類——8.4知識

  • StringBuffer append(String s):將String對象s的字符序列追加到當前StringBuffer對象的字符序列中,并返回當前StringBuffer對象的引用
  • StringBuffer append(int n):將int型數據n轉化為String對象,再把該String對象的字符序列追加到當前StringBuffer對象的字符序列中,并返回當前StringBuffer對象的引用
  • StringBuffer append(Object o):將一個Object對象o的字符序列表示追加到當前String- Buffer對象的字符序列中,并返回當前StringBuffer對象的引用
    類似的方法還有:
  • StringBuffer append(long n),StringBuffer append(boolean n),
  • StringBuffer append(float n),StringBuffer append(double n),
  • StringBuffer append(char n)
  • public chat charAt(int n ):得到參數n指定的置上的單個字符
  • public void setCharAt(int n ,char ch):將當前StringBuffer對象實體中的字符串位置n處的字符用參數ch指定的字符替換
  • StringBuffer insert(int index, String str) :將參數str指定的字符串插入到參數index指定的位置
  • public StringBuffer reverse() :將該對象實體中的字符翻轉
  • StringBuffer delete(int startIndex, int endIndex):從當前StringBuffer對象實體中的字符串中刪除一個子字符串
  • 其相關方法:deleteCharAt(int index) 刪除當前StringBuffer對象實體的字符串中index位置處的一個字符。
  • StringBuffer replace(int startIndex,int endIndex,String str):將當前StringBuffer對象實體中的字符串的一個子字符串用參數str指定的字符串替換

5.Date與Calendar類——8.5知識

(1) Date類

  • Date類在java.util包中.
  • Date類的構造方法之一:
  • Date()使用Date類的無參數構造方法創建的對象可以獲取本地當前時間。
  • Date類的構造方法之二:
    • Date(long time)使用long型參數創建指定的時間
  • System類的靜態方法 public long currentTimeMillis() 獲取系統當前時間。

(2)Calendar類

  • Calendar類在java.util包中。
  • 使用Calendar類的static方法 getInstance()可以初始化一個日歷對象,如:Calendar calendar= Calendar.getInstance();
  • calendar對象可以調用方法:
public final void set(int year,int month,int date)
public final void set(int year,int month,int date,int hour,int minute)
public final void set(int year,int month, int date, int hour, int minute,int second)
//其作用是將日歷翻到任何一個時間 

6.日期的格式化——8.6知識

可以直接使用String類調用format方法對日期進行格式化。

8.6.1 format方法

  • Formatter類的format方法:
    format(格式化模式, 日期列表)
    按著“格式化模式”返回“日期列表”中所列各個日期中所含數據(年,月,日,小時等數據)的字符串表示。

    Java已經將format方法做為了String類的靜態方法,因此,程序可以直接使用String類調用format方法對日期進行格式化。

  • 1.格式化模式
    format方法中的“格式化模式”是一個用雙引號括起的字符序列(字符串),該字符序列中的字符由時間格式符和普通字符所構成。例如:"日期:%ty-%tm-%td"
    String s = String.format("%tY年%tm月%td日",new Date(),new Date(),new Date()); 那么s就是"2011年02月10日"
  • 2.日期列表
    • format方法中的“日期列表”可以是用逗號分隔的Calendar對象或Date對象。
    • format方法默認按從左到右的順序使用“格式化模式”中的格式符來格式“日期列表”中對應的日期,而“格式化模式”中的普通字符保留原樣。
  • 3.格式化同一日期
    可以在“格式化模式”中使用“<”,比如:"%ty-%<tm-%<td"中的三個格式符將格式化同一日期,即含有“<”的格式符和它前面的格式符格式同一個日期,例如:String s = String.format("%ty年%<tm月%<td日",new Date());
    那么%<tm%<td都格式化new Date(),因此字符串s就是:"11年02月10日"

8.6.2 不同區域的星期格式

如果想用特定地區的星期格式來表示日期中的星期,可以用format的重載方法:
format (Locale locale,格式化模式,日期列表);
其中的參數locale是一個Locale類的實例,用于表示地域。
Locale類的static常量都是Locale對象,其中US是表示美國的static常量。

7.Math類、BigInteger類和Random類——8.7知識

8.7.1 Math類

Math類在java.lang包中。Math類包含許多用來進行科學計算的類方法,這些方法可以直接通過類名調用。
另外,Math類還有兩個靜態常量,它們分別是:
E 2.7182828284590452354PI 3.14159265358979323846
以下是Math類的常用類方法:

  • public static long abs(double a) 返回a的絕對值。
  • public static double max(double a,double b) 返回a、b的最大值。
  • public static double min(double a,double b) 返回a、b的最小值。
  • public static double random() 產生一個0到1之間的隨機數(不包括0和1)。
  • public static double pow(double a,double b) 返回a的b次冪。
  • public static double sqrt(double a) 返回a的平方根。
  • public static double log(double a) 返回a的對數。
  • public static double sin(double a) 返回正弦值。
  • public static double asin(double a) 返回反正弦值。
  • public static double ceil(double a) 返回大于a的最小整數,并將該整數轉化為double型數據。
  • public static double floor(double a) 返回小于a的最大整數,并將該整數轉化為double型數據。
  • public static long round(double a) 返回值是(long)Math.floor(a+5),即所謂a的“四舍五入”后的值。

8.7.2 BigInteger類

java.math包中的BigInteger類提供任意精度的整數運算。可以使用構造方法:
public BigInteger(String val) 構造一個十進制的BigInteger對象。
以下是BigInteger類的常用類方法:

  • public BigInteger add(BigInteger val) 返回當前大整數對象與參數指定的大整數對象的和。
  • public BigInteger subtract(BigInteger val)返回當前大整數對象與參數指定的大整數對象的差。
  • public BigInteger multiply(BigInteger val)返回當前大整數對象與參數指定的大整數對象的積。
  • public BigInteger divide(BigInteger val)返回當前大整數對象與參數指定的大整數對象的商。
  • public BigInteger remainder(BigInteger val)返回當前大整數對象與參數指定的大整數對象的余。
  • public int compareTo(BigInteger val) 返回當前大整數對象與參數指定的大整數的比較結果,返回值是1、-1或0,分別表示當前大整數對象大于、小于或等于參數指定的大整數。
  • public BigInteger pow(int a) 返回當前大整數對象的a次冪。
  • public String toString() 返回當前大整數對象十進制的字符串表示。
  • public String toString(int p) 返回當前大整數對象p進制的字符串表示。

8.7.3 Random類

Random類的如下構造方法:

public Random();
public Random(long seed);

第一個構造方法使用當前及其實踐作為種子創建一個Random對象,第二個構造方法使用參數seed指定的種子創建一個Random對象。
隨機數生成器random調用不帶參數的nextInt()方法:

Random random=new Random();
random.nextInt();

返回一個0至n之間(包括0,但不包括n)的隨機數
隨機數生成器random調用帶參數的nextInt(int m)方法(參數m必須取正整數值)

8.數字格式化——8.8知識

8.8.1 format方法

Formatter類提供了一個和C語言printf函數類似的format方法:format(格式化模式,值列表)
該方法按著“格式化模式”返回“值列表”的字符串表示。
Java已經將format方法做為了String類的靜態方法,因此,程序可以直接使用String類調用format方法對數字進行格式化。

  • 1.格式化模式:format方法中的“格式化模式”是一個用雙引號括起的字符序列(字符串),該字符序列中的字符由格式符和普通字符所構成。
    例如:"輸出結果%d,%f,%d"中的%d%f是格式符號。
    format方法返回的字符串就是“格式化模式”中的格式符被替換為它得到的格式化結果后的字符串。
    例如:String s = String.format(“%.2f”,3.141592);那么s就是“3.14”.
  • 2.值列表:format方法中的“值列表”是用逗號分隔的變量、常量或表達式。 例如:
    String s=format("%d元%0.3f公斤%d臺",888,999.777666,123); 那么,s就是"888元999.778公斤123臺"
  • 3.格式化順序:format方法默認按從左到右的順序使用“格式化模式”中的格式符來格式化“值列表”中對應的值,而“格式化模式”中的普通字符保留原樣。
    例如,假設int型變量x和double型變量y的值分別是8883.1415926
    那么對于String s = format("從左向右:%d,%.3f,%d",x,y,100);
    字符串s就是:從左向右:888,3.142,100

    • 注1:改變默認的順序(從左向右)進行格式化,在格式符前面添加索引符號index$,例如,1$表示“值列表”中的第1個,2$表示“值列表”中的第2個,
      對于:String s=String.format(“不是從左向右:%2$.3f,%3$d,%1$d”,x,y,100);
      字符串s就是:不是從左向右:3.142,100,888
    • 注2:如果準備在“格式化模式”中包含普通的%,在編寫代碼時需要連續鍵入兩個%,如:
      String s=String.format("%d%%",89); 輸字符串s是:"89%"

8.8.2 格式化整數

  • 1.%d%o%x%X
    格式符可格式化byte、Byte、short、Short、int、Integer、long和Long型數據。
  • 2.修飾符
    • 加號修飾符"+"格式化正整數時,強制添加上正號,例如,%+d將123格式化為"+123"。
    • 逗號修飾符“,”格式化整數時,按"千"分組。
  • 3.數據的寬度
    數據的寬度就是format方法返回的字符串的長度。規定數據寬度的一般格式為“%md”,其效果是在數字的左面增加空格;或"%-md“,其效果是在數字的右面增加空格,
    例如,將數字59格式化為寬度為8的字符串:String s=String.format("%8d",59);
    字符串s就是:“ 59",其長度(s.length())為8,即s在59左面添加了6個空格字符。
    • 對于:String s=String.format(“%-8d”,59);字符串s就是:"59 ",其長度(s.length())為8。
    • 對于:String s=String.format("%5d%5d%8d",59,60,90);字符串s就是:“59 60 90”(長度為18)。

注:如果實際數字的寬度大于格式中指定的寬度,就按數字的實際寬度進行格式化。
可以在寬度的前面增加前綴0,表示用數字0(不用空格)來填充寬度左面的富裕部分,例如:String s=String.format("%08d",12);字符串s就是:"00000012",其長度(s.length())為8,即s在12的左面添加了6個數字0。

8.8.3 格式化浮點數

  • 1.float,Float,doubleDouble
    %f,%e(%E),%g(%G)%a(%A)格式符可格式化float、Float、double和Double:
    • %f將值格式化為十進制浮點數,小數保留6位。
    • %e(%E) 將值格式化為科學記數法的十進制的浮點數(%E在格式化時將其中的指數符號大寫,例如5E10)。
  • 2.修飾符
    • 加號修飾符"+"格式化正數時,強制添加上正號,例如%+f將123.78格式化為"+123.78", %+E將123.78格式化為"+1.2378E+2"。
    • 逗號修飾符“,”格式化浮點數時,將整數部分按“千”分組。
  • 3.限制小數位數與數據的“寬度”
    "%.nf"可以限制小數的位數,其中的n是保留的小數位數,例如%.3f6.1256格式化為"6.126"(保留3位小數)。
    規定寬度的一般格式為“%mf”(在數字的左面增加空格),或“%-md”(在數字的右面增加空格)。

    注:如果實際數字的寬度大于格式中指定的寬度,就按數字的實際寬度進行格式化

9.Class類與Console類——8.9知識

8.9.1 Class類

  • 1.使用Class的類方法得到一個和某類(參數className指定的類)相關的Class對象:
    public static Class forName(String className) throws ClassNotFoundException??
    上述方法返回一個和參數className指定的類相關的Class對象。如果類在某個包中,className必須帶有包名,例如, className="java.util.Date"
  • 2.步驟1中獲得的Class對象調用
    public Object newInstance() throws Exception方法就可以得到一個className類的對象。
    要特別注意的是:使用Class對象調用newInstance()實例化一個className類的對象時,className類必須有無參數的構造方法。

8.9.2 Console類

如果希望在鍵盤輸入一行文本,但不想讓該文本回顯,即不在命令行顯示,那么就需要使用java.io包中的Console類的對象來完成。
首先使用System類調用console()方法返回一個Console類的一個對象,比如cons
Console cons = System.console();
然后,cons調用readPassword()方法讀取用戶在鍵盤輸入的一行文本,并將文本以一個char數組返回:
char[] passwd = cons.readPassword();

8.10 Pattern類與Matcher類

Pattern類和Matcher類在java.util.regex包中。
以下結合具體問題來講解使用Pattern類和Matcher類的步驟。假設有字符串:
String input = "hello,good morning,this is a good idea"
我們想知道input從哪個位置開始至哪個位置結束曾出現了字符串good
使用Pattern類和Matcher類檢索字符串str中的子字符串的步驟如下:

  • 1.建立模式對象
    使用正則表達式regex做參數得到一個稱為模式的Pattern類的實例pattern
    例如:
String regex = "good";
Pattern pattern = Pattern.compile(regex); 

模式對象是對正則表達式的封裝。Pattern類調用類方法compile(String regex)返回一個模式對象,其中的參數regex是一個正則表達式, 稱為模式對象使用的模式。

  • 2.得到匹配對象
    模式對象pattern調用matcher(CharSequence input)方法返回一個Matcher對象matcher,稱為匹配對象
    Matcher matcher = pattern.matcher(input);
    Matcher對象matcher可以使用下列方法尋找字符串input中是否有和模式regex匹配的子序列(regex是創建模式對象pattern時使用的正則表達式)。
    • public boolean find():尋找inputregex匹配的下一子序列,如果成功該方法返回true,否則返回false
    • public boolean matches()matcher調用該方法判斷input是否完全和regex匹配。
    • public boolean lookingAt()matcher調用該方法判斷從input的開始位置是否有和regex匹配的子序列。
    • public boolean find(int start) : matcher調用該方法判斷input從參數start指定位置開始是否有和regex匹配的子序列 。
    • public String replaceAll(String replacement)matcher調用該方法可以返回一個字符串,該字符串是通過把input中與模式regex匹配的子字符串全部替換為參數replacement指定的字符串得到的.
    • public String replaceFirst(String replacement)matcher調用該方法可以返回一個字符串,該字符串是通過把input中第1個與模式regex匹配的子字符串替換為參數replacement指定的字符串得到的。

二、腳本截圖

1591805-20190410091404665-487194992.png

三、學習感受

  • 本周的學習內容相較于上周較為簡單,重點在于正則表達式,理解起來比較費勁,之后也會對這一部分進行鞏固的。
  • 本周的結對項目進入了完善和整合階段,進行了整體總結
  • 本周的團隊項目也對之前的《需求規格說明書》和團隊分工進行了完善,確定分工

轉載于:https://www.cnblogs.com/wyf20175217/p/10681235.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/394269.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/394269.shtml
英文地址,請注明出處:http://en.pswp.cn/news/394269.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

leetcode109. 有序鏈表轉換二叉搜索樹(深度優先搜索/快慢指針)

給定一個單鏈表&#xff0c;其中的元素按升序排序&#xff0c;將其轉換為高度平衡的二叉搜索樹。 本題中&#xff0c;一個高度平衡二叉樹是指一個二叉樹每個節點 的左右兩個子樹的高度差的絕對值不超過 1。 解題思路 先將鏈表轉換成數組&#xff0c;再構造二叉搜索樹 代碼 …

NeHe OpenGL教程 第三十七課:卡通映射

轉自【翻譯】NeHe OpenGL 教程 前言 聲明&#xff0c;此 NeHe OpenGL教程系列文章由51博客yarin翻譯&#xff08;2010-08-19&#xff09;&#xff0c;本博客為轉載并稍加整理與修改。對NeHe的OpenGL管線教程的編寫&#xff0c;以及yarn的翻譯整理表示感謝。 NeHe OpenGL第三十七…

SDN交換機在云計算網絡中的應用場景

SDN的技術已經發展了好幾年了&#xff0c;而云計算的歷史更長&#xff0c;兩者的結合更是作為SDN的一個殺手級應用在近兩年炒得火熱&#xff0c;一些知名咨詢公司的關于SDN逐年增加的市場份額的論斷&#xff0c;也主要是指SDN在云計算網絡中的應用。 關于SDN在云計算網絡中的應…

sql server 里面怎么支持數字使用雙引號_國查:用中文編寫SQL

這兩天被 文言(wenyan-lang)刷屏了&#xff0c;這個項目在于使用文言文進行編程&#xff0c;我打算蹭個熱度&#xff0c;把年初的作品再撈一撈&#xff0c;即中文SQL。1. 文言Wenyan&#xff1a;吾有一數。曰三。名之曰「甲」。為是「甲」遍。吾有一言。曰「「問天地好在。」」…

七日掌握設計配色基礎_掌握正確的基礎知識:如何設計網站的導航,搜索和首頁...

七日掌握設計配色基礎by Anant Jain通過Anant Jain 掌握正確的基礎知識&#xff1a;如何設計網站的導航&#xff0c;搜索和首頁 (Get the basics right: how to design your site’s navigation, search, and homepage) 一個7分鐘的指南&#xff0c;使這三個基礎組件正確無誤。…

python渲染光線_python模板渲染配置文件

python的mako、jinja2模板庫&#xff0c;確實好用&#xff01;這里做個筆記&#xff0c;好記性不如爛筆頭。#!/usr/bin/env python#encodingutf-8import sys,yaml # 配置文件使用yaml格式from mako.template import Template # 加載mako庫的Templat…

leetcode114. 二叉樹展開為鏈表(深度優先搜索)

給定一個二叉樹&#xff0c;原地將它展開為一個單鏈表。例如&#xff0c;給定二叉樹1/ \2 5/ \ \ 3 4 6 將其展開為&#xff1a;1\2\3\4\5\6代碼 class Solution {public void flatten(TreeNode root) {flat(root);}public TreeNode flat(TreeNode root) {if(rootnull)…

eclipse新建web項目

需要點擊File—>New—>Other…在Web文件夾下找到Dynamic Web Project—>Next修改server端口可以在啟動項目后訪問地址是端口號項目名轉載于:https://juejin.im/post/5cb4999df265da037b610545

idea tips

AltInsert 自動出現generate ,,里面有構造方法&#xff0c;getter,setter... CtrlO,重寫方法 CtrlI...自動出現接口的方法 轉載于:https://www.cnblogs.com/bin-lin/p/6247538.html

革新以太網交換機架構 全光網絡的風刮進園區

全光網絡的風正在刮進園區網&#xff0c;眾所周知&#xff0c;光纖入戶發展迅速&#xff0c;隨著PON&#xff08;無源光纖網絡&#xff09;技術在運營商通信網絡的大規模使用&#xff0c;PON相關產業鏈逐步成熟&#xff0c;這也使得PON技術逐步在企業園區網得到應用。 基于銅線…

mysql loop循環實例_MySql CURSOR+LOOP循環-使用小實例

轉載自https://blog.csdn.net/starinbrook/article/details/77078126轉載自https://blog.csdn.net/makang456/article/details/53896346/【簡介】游標實際上是一種能從包括多條數據記錄的結果集中每次提取一條記錄的機制。游標充當指針的作用。盡管游標能遍歷結果中的所有行&am…

react數據從本地讀取_如何將從Google表格讀取的React應用程序部署到Netlify

react數據從本地讀取In this tutorial, we’re going to cover how to connect to a spreadsheet hosted on Google, display that information inside a React application, and deploy it to Netlify.在本教程中&#xff0c;我們將介紹如何連接到Google托管的電子表格&#x…

leetcode743. 網絡延遲時間(迪杰斯特拉算法)

有 N 個網絡節點&#xff0c;標記為 1 到 N。 給定一個列表 times&#xff0c;表示信號經過有向邊的傳遞時間。 times[i] (u, v, w)&#xff0c;其中 u 是源節點&#xff0c;v 是目標節點&#xff0c; w 是一個信號從源節點傳遞到目標節點的時間。 現在&#xff0c;我們從某個…

在線python視頻教程_【好程序員】2019 Python全套視頻教程2

2019千鋒好程序員全新Python教程&#xff0c;深入淺出的講解Python語言的基礎語法&#xff0c;注重基本編程能力訓練&#xff0c;深入解析面向對象思想&#xff0c;數據類型和變量、運算符、流程控制、函數、面向對象、模塊和包、生成器和迭代器。教程列表&#xff1a;千鋒Pyth…

洛谷——P1546 最短網絡 Agri-Net

P1546 最短網絡 Agri-Net 題目背景 農民約翰被選為他們鎮的鎮長&#xff01;他其中一個競選承諾就是在鎮上建立起互聯網&#xff0c;并連接到所有的農場。當然&#xff0c;他需要你的幫助。 題目描述 約翰已經給他的農場安排了一條高速的網絡線路&#xff0c;他想把這條線路共享…

漫談單點登錄(SSO)(淘寶天貓)(轉載)

1. 摘要 &#xff08; 注意&#xff1a;請仔細看下摘要&#xff0c;留心此文是否是您的菜&#xff0c;若浪費寶貴時間&#xff0c;深感歉意&#xff01;&#xff01;&#xff01;&#xff09; SSO這一概念由來已久&#xff0c;網絡上對應不同場景的成熟SSO解決方案比比皆是&…

mysql mdl 鎖_MySQL MDL鎖

MDL全稱為metadata lock&#xff0c;即元數據鎖。MDL鎖主要作用是維護表元數據的數據一致性&#xff0c;在表上有活動事務(顯式或隱式)的時候&#xff0c;不可以對元數據進行寫入操作。因此從MySQL5.5版本開始引入了MDL鎖&#xff0c;來保護表的元數據信息&#xff0c;用于解決…

Card Game Again CodeForces - 818E (雙指針)

大意: 給定序列, 求多少個區間積被k整除. 整除信息滿足單調性, 顯然雙指針. 具體實現只需要考慮k的素數向量, 對每一維維護個指針即可. 這題看了下cf其他人的做法, 發現可以直接暴力, 若當前的前綴積模k為0, 暴力向前求出第一個后綴積為0的位置即可, 復雜度是$O(n)$的并且相當好…

pacf和acf_如何通過Wordpress API,ACF和Express.js使Wordpress更加令人興奮

pacf和acfby Tyler Jackson泰勒杰克遜(Tyler Jackson) 如何通過Wordpress API&#xff0c;ACF和Express.js使Wordpress更加令人興奮 (How to make Wordpress more exciting with the Wordpress API, ACF, & Express.js) I’ve been working with Wordpress since it’s pr…

python運行出現數據錯誤_Python運行出錯情況

1、錯誤內容&#xff1a;You must not use 8-bit bytestrings unless you use a text_factory that can interpret 8-bit bytestrings (like text_factory str). It is highly recommended that you instead just switch your application to Unicode strings.錯誤描述&#x…