2015年8月8日 星期六

「swift」筆記4 - Loop

1.while loop


var result:Bool=true
var loop:Int = 1

//條件式迴圈Conditional

while result
{
    print("success")
    
    loop++
    
    if loop == 100
    {
        break
    }
    
}

2.do while loop

//do whele conditional

do
{

    
}while result == false

3.for loop

var p:Int

for p = 1 ; p <= 10 ; p++
{
    println(p)
}

4. for in


//array 用中括號
var names=["allen","bill" , "candy" , "eric" , "frank"]

//name不需要用var ,但在這裡name它還是區域變數
for  name in names
{
    print(name)
}

5.for in 並不會給定變數初始值,以下這段CODE會出錯




















可以將變數宣告成Optional來解決(Optional會自動初始化為nil)

[Swift]筆記3 -String

1.建構方式建立空字串的方式


var myName : String = String() //Structure

2.在Swift中,String是值型別,並不是參考型的物件,

所以可以直接用==來做內容的比較。


var name1 , name2 : String
name1 = "Eric"
name2 = "Eric"

if name1 == name2
{
    print("equ")
}
else
{
    print("no equ")
}

3.可以把字串的內容當成字元一個一個輸出


var myName : String = String()

myName = "北七部落"

for character in myName
{
    print(character)
}


4. 串接字串


var myName : String = String()

myName = "北七部落"

myName + " Hello world"

print (myName)

5.unicode scalar


var myName : String = String() 

myName = "北七部落"

for uni in myName.unicodeScalars
{
    print(uni)
}

6.String在Swift中是一個Struct,類別有的功能它都有,但沒有繼承性,

相對也較節省記憶體,但延伸應就沒那麼廣。

var myName : String = String() 

myName = "北七部落"

var isEmpty =  myName.isEmpty

7. SubString

Swift的subString並不是直接給index,必須要先透過advance產生String.index

以是這段是由第3個位置開始取到字串結尾


let index=advance(myName.startIndex , 3)

myName.substringFromIndex(index)


8.以array方式取出字串某一個字元(一樣要透過advance產生String.index)


var myName : String = String() 

myName = "北七部落"

let index=advance(myName.startIndex , 3)

var char = myName[index]

9.由陣列中找出字串開頭符合的結果


var addr = ["高雄市三民區" , "台南市安南區" , "高雄市前鎮區"]

//for in 
for add in addr
{
    if add.hasPrefix("高雄市")
    {
        print(add)
    }
}


找出字串結尾結尾符合

var addr = ["高雄市三民區" , "台南市安南區" , "高雄市前鎮區"]

//for in
for add in addr
{
    if add.hasSuffix("三民區")
    {
        print(add)
    }
}

10.大小寫轉換

//upcast
var caseStrig = myName.uppercaseString

//lowcast
var caseString2 = caseStrig.lowercaseString


2015年8月6日 星期四

[Java] IP Address String to int


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
	public int parseNumericAddress(String ipaddr) {

		// Check if the string is valid

		if (ipaddr == null || ipaddr.length() < 7 || ipaddr.length() > 15)
			return 0;

		// Check the address string, should be n.n.n.n format

		StringTokenizer token = new StringTokenizer(ipaddr, ".");
		if (token.countTokens() != 4)
			return 0;

		int ipInt = 0;

		while (token.hasMoreTokens()) {

			// Get the current token and convert to an integer value

			String ipNum = token.nextToken();

			try {

				// Validate the current address part

				int ipVal = Integer.valueOf(ipNum).intValue();
				if (ipVal < 0 || ipVal > 255)
					return 0;

				// Add to the integer address

				ipInt = (ipInt << 8) + ipVal;
			} catch (NumberFormatException ex) {
				return 0;
			}
		}

		// Return the integer address

		return ipInt;
	}