2022年4月23日 星期六
java:連續亂數取不重複整數值寫法練習
2022年4月22日 星期五
android studio:字串處理的一些方法
有時候,取回來的文字資料,需要進行適當的處理,才可以再度利用,這時候就會用到java處理文字的方法。
(1)replace 用新的數值取代字串中的舊數值
String Text="這個字是a,要取代成b";
//以參數2的文字取代參數1的文字,只可替換文字
Text.replace("a","b");
//以參數2的值取代參數1的值,可替換其它如空白、\\d等參數式,此範例為將兩個空白取代成一個空白
Text.replaceAll(" "," ");
//只更換第一個,以參數2的值取代參數1的值,可替換其它如空白、\\d等參數式,此範例為將兩個空白取代成一個空白
Text.replaceFirst(" "," ");
String Text="3 4 5";
//利用空格將字串分成[3,4,5],這樣利用取得清單的方式取得其中的某個值,中間要加中括號
Text.split("[ ]");
String[] words = Text.split("[ ]");
//遇特殊的符號,正則運算式,要加兩個反斜線\\,這很重要
List<String> list2=new ArrayList();
list2= Arrays.asList(Text.split("[ ]"));
如果要區隔的元件是正則表示式,像是.(連接符號)、^(限制開頭),要加兩個反斜線
String str="我是一個天才";
//參數1是要取值的第一個位置,第二個是結束的位置,這個位置不包含第一個位置,以下取得"是"
str=str.substring(1,2);
//參數1是要取值的第1個位置,後面沒有設,因此到結尾,以下取得"一個天才"
str=str.substring(2);
//參數1為第1個位置,參數2為你要搜尋的那個字位置,以下取得"一個天"
str=str.substring(2,str.indexOf("才"));
(4)indexOf 搜尋某個字串的位置
String str="我是一個天才,你也是一個天才";
//參數一為你要搜尋的字串,搜尋字串"一"出現的第一位置
str.indexOf("一");
//參數一為你要搜尋的字串,參數二是搜尋的起始點,此為由第4個位置開始,搜尋字串"一"出現的第一位置
str.indexOf("一",4);
//參數一為你要搜尋的字串,搜尋字串"一"出現的最後一個位置
str.lastIndexOf("一");
(5)charAt
String str="我是一個天才,你也是一個天才";
//參數一為你要搜尋的位置,以下為搜尋第5個位置,得到的值為"天"
str.charAt(5);
(6)startsWith和endsWith
String str="我是一個天才,你也是一個天才";
//參數一為你要搜尋的前綴字串,傳回值為布林值,若符合是真,不符合是假"
str.startsWith("我是");
//參數一為你要搜尋的後綴字串,傳回值為布林值,若符合是真,不符合是假"
str.endsWith("天才");
string1.concat(string2); //以下連接string1和string2兩個字串
(9)trim 去除字串前後的空白
String string = "這是一個測試";
boolean b=string.contains("是"); //傳回True值
2022年3月16日 星期三
android studio:List(Array、ArrayList、LinkedList )說明
List是所謂的陣列類別,是儲存資料的一種方式。在Android Studio中,只有介面,沒有實作,而若要實作,則要使用List下 ArrayList與Array及LinkedArray等類別。
一、ArrayList是一個List的子類別,可具體化,它與Array不同,它的大小可以改變,而因為裡面的元素很多,因此可以採用泛型的方式建立物件,不用先指定ArrayList()<>裡的元素類型,因為它是用Object[] elementData的方式運作,其中的元素必須是物件類型。
(一)新建ArrayList的方式如下:(1 2利用了ArrayList可泛型的特性,不給予元素類型)
ArrayList<String> arrayList=new ArrayList<>(); //定義陣列的第一個值是String類型
(二)加入ArrayList陣列值的方法 .add("想加入的資料")
在此列表中的指定位置插入指定的元素。參數說明:index為要值入的位置,element為要插入的值,若沒有加入位置,則插入最後一個位置。
arrayList.add("1");
(三)取得ArrayList陣列值的方法 .get(int index);返回此列表中指定位置的元素。
arrayList.get(1); //取得陣列2的值
arrayList.get(2); //取得陣列3的值
(四)計算陣列的長度 .size()
arrayList.size();
(五)查詢是否有某特定的值,有則回傳真,沒有為假 .contains()
arrayList.contains(1);
arrayList.indexOf(1);
(七)刪除特定元素 .remove(1)
arrayList.remove(1);
(八)判斷是否為空 isEmpty()
arrayList.isEmpty();
(九)清除陣列所有資料 .clear()
arrayList.clear();
array[0]="第一個";
array[1]="第二個";
array[1]="換的第二個";
List<String> list=Arrays.asList(array); //arrayList不用管空間大小,因此利用asList方法將資料一個一個放進ArrayList就可以了。
LinkedList<String> linkedList2=new LinkedList<>();
linkedList.addFirst("新增第一項"); //新增新一項
linkedList.addLast("新增最後一項"); //新增最後一項
linkedList.removeLast(); //移除最後一項
linkedList.getFirst(); //取得第一項
linkedList.getLast(); //取得最後一項
2021年11月21日 星期日
android studio學習整理
一、基本名詞
JDK Java Development Kit(JDK) 昇陽科技提供給java開發者的免費軟體開發套件(SDK)JRE Java Runtime Environment (JRE) JAVA執行的環境。
JVM Java Virtual Machine 可以執行java bytecodeh的虛擬機器。
AVD:Android Virtual Device,以Android系統運行的虛擬設備,與上面提到的JVM相似。
SDK:軟體開發套件(英語:Software Development Kit, SDK)指一些被軟體工程師用於為特定的軟體套件、軟體框架、硬體平台及作業系統等建立應用軟體的開發工具之集合。 它或許只是簡單的為某個程式語言提供應用程式介面的一些檔案,但也可能包括能與某種嵌入式系統通訊的複雜的硬體。
DSL 其實是 Domain Specific Language 的縮寫,中文翻譯為領域特定語言。GPL 是 General Purpose Language 的簡稱,即通用程式語言
openssl OpenSSL是一個開放原始碼的軟體函式庫套件,應用程式可以使用這個套件來進行安全通訊,避免竊聽,同時確認另一端連線者的身分。這個套件廣泛被應用在網際網路的網頁伺服器上。
compileSdk、minSdk、targetSdk到概念
https://codertw.com/程式語言/751107/
二、android studio配置說明
build.Gradle 介紹 https://ithelp.ithome.com.tw/articles/10129873
三.基本程式寫法(java)
1.基礎影片(詳細的影片,看完後,會有大概的基礎能力)
雷宇資訊
https://www.youtube.com/channel/UC0y81iyJdnqWEGWcCeAE7Uw
天哥在奔跑
https://www.youtube.com/watch?v=sehxt5wbsgM&list=PLoDvOw64tSYsWvlxk9aIDOGPVrFQeHull
文本
https://wiki.jikexueyuan.com/list/android/
資料庫連結
1. 如何連接mysql
資料庫儲存實作範例
https://ithelp.ithome.com.tw/articles/10215767
https://mnya.tw/cc/word/1480.html (這位作者寫的最清楚)
Android stuidio连接mySql数据库之踩坑篇(一些可能產生的問題)
https://blog.csdn.net/qq_29226403/article/details/103214832?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link&utm_relevant_index=2
app連接mysql
https://blog.csdn.net/weixin_44338074/article/details/110769001?spm=1001.2014.3001.5501
連結firebase的方法
如何連接firebase,並用google登入等資訊
https://firebase.google.com/docs/auth/android/password-auth?hl=zh-CN#java_1
六、anko 說明
https://www.twblogs.net/a/5cdb2c26bd9eee67a77fdd2f
viewblinding使用說明
https://happyphoebe40090.medium.com/google-course-android-basics-in-kotlin-第5篇-viewbinding-183388315083
anko 使用說明(回家看)
2.使用Anko Layout建立第一個App
https://zongjia.blogspot.com/2018/01/kotlinandroid01-anko-layoutapp_29.html?m=1
onclick 和setOnClickListener的差別
https://codertw.com/android-%E9%96%8B%E7%99%BC/342645/
使用相機照片,及使用相簿照片
kotlin
https://www.youtube.com/watch?v=xZZQ5q5pOp0
java
https://www.youtube.com/watch?v=LpL9akTG4hI
https://codertw.com/android-%E9%96%8B%E7%99%BC/338565/
圖片移動與縮放教學
https://codeqingyun.com/article/80109050/
使用webview,並利用此方法進行google 搜尋
https://stackoverflow.com/questions/16955560/how-to-show-android-google-default-search-results-in-webview
鍵盤收納:https://blog.csdn.net/ccpat/article/details/46717573
webview詳解
https://www.itread01.com/content/1547697428.html
calendar 日曆
https://oldgrayduck.blogspot.com/2012/07/android.html?m=0
okhttp連線及json解析
https://ithelp.ithome.com.tw/articles/10188600
https://www.jianshu.com/p/d006bc55bca9
https://thumbb13555.pixnet.net/blog/post/314662580
https://codertw.com/程式語言/302813/
animation(動畫)
https://www.youtube.com/watch?v=fqU4zc_XeX0
https://ithelp.ithome.com.tw/articles/10201802
https://wiki.jikexueyuan.com/project/android-animation/7.html
側滑選單
https://thumbb13555.pixnet.net/blog/post/322047734-drawerlayout_and_navigationview