NSString 練習

復制代碼

//將“?文藝?青年”改成“213?青年”。

? NSString *str = @"文藝青年";

? NSString *str1 = [str stringByReplacingOccurrencesOfString:@"文藝" withString:@"213"];

? ? NSLog(@"%@",str1);

?? ?

//將 整數123 轉換為字符串“123”。

? ? NSString *s = [NSString stringWithFormat:@"%d",123];

? ? ? NSLog(@"%@",s);

?? ?

//將 “i love you”單詞?首字?母變?大寫 “I love You”

?? ? NSString *str2 = @"i love you";

? ? NSLog(@"%@",[str2 capitalizedString]);

?? ?

//截取字符串“20|http://www.baidu.com”中 “|” 前?面和后?面的字符串, 并輸出。提?示:-componentsSeparatedByString:

? ? NSString *st = @"20|http://www.baidu.com";

? ? NSArray *arr = [st componentsSeparatedByString:@"|"];

? ? NSLog(@"第一部分:%@",arr[0]);

? ? NSLog(@"第二部分:%@",arr[1]);

?? ?

? ??

/*******************************************************************************************
NSString
*******************************************************************************************/
//一、NSString????
/*----------------創建字符串的方法----------------*/

//1、創建常量字符串。
NSString?*astring?=?@"This?is?a?String!";


//2、創建空字符串,給予賦值。

NSString?*astring?=?[[NSString?alloc]?init];
astring?=?@"This?is?a?String!";
[astring?release];
NSLog(@"astring:%@",astring);
//

NSString?*astring?=?[[NSString?alloc]?init];
NSLog(@"0x%.8x",?astring);
astring=@"This?is?a?String!";
NSLog(@"0x%.8x",?astring);
[astring?release];
NSLog(@"astring:%@",astring);




//3、在以上方法中,提升速度:initWithString方法

NSString?*astring?=?[[NSString?alloc]?initWithString:@"This?is?a?String!"];
NSLog(@"astring:%@",astring);
[astring?release];



//4、用標準c創建字符串:initWithCString方法

char?*Cstring?=?"This?is?a?String!";
NSString?*astring?=?[[NSString?alloc]?initWithCString:Cstring];
NSLog(@"astring:%@",astring);
[astring?release];



//5、創建格式化字符串:占位符(由一個%加一個字符組成)

int?i?=?1;
int?j?=?2;
NSString?*astring?=?[[NSString?alloc]?initWithString:[NSString?stringWithFormat:@"%d.This?is?%i?string!",i,j]];
NSLog(@"astring:%@",astring);
[astring?release];



//6、創建臨時字符串

NSString?*astring;
astring?=?[NSString?stringWithCString:"This?is?a?temporary?string"];
NSLog(@"astring:%@",astring);




/*----------------從文件讀取字符串:initWithContentsOfFile方法----------------*/????

NSString?*path?=?@"astring.text";
NSString?*astring?=?[[NSString?alloc]?initWithContentsOfFile:path];
NSLog(@"astring:%@",astring);
[astring?release];


/*----------------寫字符串到文件:writeToFile方法----------------*/????


NSString?*astring?=?[[NSString?alloc]?initWithString:@"This?is?a?String!"];
NSLog(@"astring:%@",astring);
NSString?*path?=?@"astring.text";????
[astring?writeToFile:?path?atomically:?YES];
[astring?release];????




/*----------------比較兩個字符串----------------*/????????

//用C比較:strcmp函數

char?string1[]?=?"string!";
char?string2[]?=?"string!";
if(strcmp(string1,?string2)?=?=?0)
{
NSLog(@"1");
}



//isEqualToString方法????
NSString?*astring01?=?@"This?is?a?String!";
NSString?*astring02?=?@"This?is?a?String!";
BOOL?result?=?[astring01?isEqualToString:astring02];
NSLog(@"result:%d",result);




//compare方法(comparer返回的三種值)????
NSString?*astring01?=?@"This?is?a?String!";
NSString?*astring02?=?@"This?is?a?String!";????
BOOL?result?=?[astring01?compare:astring02]?=?=?NSOrderedSame;????
NSLog(@"result:%d",result);????
//NSOrderedSame判斷兩者內容是否相同




NSString?*astring01?=?@"This?is?a?String!";
NSString?*astring02?=?@"this?is?a?String!";
BOOL?result?=?[astring01?compare:astring02]?=?=?NSOrderedAscending;????
NSLog(@"result:%d",result);
//NSOrderedAscending判斷兩對象值的大小(按字母順序進行比較,astring02大于astring01為真)



NSString?*astring01?=?@"this?is?a?String!";
NSString?*astring02?=?@"This?is?a?String!";
BOOL?result?=?[astring01?compare:astring02]?=?=?NSOrderedDescending;????
NSLog(@"result:%d",result);?????
//NSOrderedDescending判斷兩對象值的大小(按字母順序進行比較,astring02小于astring01為真)



//不考慮大小寫比較字符串1
NSString?*astring01?=?@"this?is?a?String!";
NSString?*astring02?=?@"This?is?a?String!";
BOOL?result?=?[astring01?caseInsensitiveCompare:astring02]?=?=?NSOrderedSame;????
NSLog(@"result:%d",result);?????
//NSOrderedDescending判斷兩對象值的大小(按字母順序進行比較,astring02小于astring01為真)



//不考慮大小寫比較字符串2
NSString?*astring01?=?@"this?is?a?String!";
NSString?*astring02?=?@"This?is?a?String!";
BOOL?result?=?[astring01?compare:astring02
options:NSCaseInsensitiveSearch?|?NSNumericSearch]?=?=?NSOrderedSame;????
NSLog(@"result:%d",result);?????

//NSCaseInsensitiveSearch:不區分大小寫比較?NSLiteralSearch:進行完全比較,區分大小寫?NSNumericSearch:比較字符串的字符個數,而不是字符值。


/*----------------改變字符串的大小寫----------------*/????

NSString?*string1?=?@"A?String";?
NSString?*string2?=?@"String";?
NSLog(@"string1:%@",[string1?uppercaseString]);//大寫
NSLog(@"string2:%@",[string2?lowercaseString]);//小寫
NSLog(@"string2:%@",[string2?capitalizedString]);//首字母大小


/*----------------在串中搜索子串----------------*/????????

NSString?*string1?=?@"This?is?a?string";
NSString?*string2?=?@"string";
NSRange?range?=?[string1?rangeOfString:string2];
int?location?=?range.location;
int?leight?=?range.length;
NSString?*astring?=?[[NSString?alloc]?initWithString:[NSString?stringWithFormat:@"Location:%i,Leight:%i",location,leight]];
NSLog(@"astring:%@",astring);
[astring?release];


/*----------------抽取子串?----------------*/????????

//-substringToIndex:?從字符串的開頭一直截取到指定的位置,但不包括該位置的字符
NSString?*string1?=?@"This?is?a?string";
NSString?*string2?=?[string1?substringToIndex:3];
NSLog(@"string2:%@",string2);




//-substringFromIndex:?以指定位置開始(包括指定位置的字符),并包括之后的全部字符
NSString?*string1?=?@"This?is?a?string";
NSString?*string2?=?[string1?substringFromIndex:3];
NSLog(@"string2:%@",string2);




//-substringWithRange:?//按照所給出的位置,長度,任意地從字符串中截取子串
NSString?*string1?=?@"This?is?a?string";
NSString?*string2?=?[string1?substringWithRange:NSMakeRange(0,?4)];
NSLog(@"string2:%@",string2);


//擴展路徑

NSString?*Path?=?@"~/NSData.txt";
NSString?*absolutePath?=?[Path?stringByExpandingTildeInPath];
NSLog(@"absolutePath:%@",absolutePath);
NSLog(@"Path:%@",[absolutePath?stringByAbbreviatingWithTildeInPath]);



//文件擴展名
NSString?*Path?=?@"~/NSData.txt";
NSLog(@"Extension:%@",[Path?pathExtension]);




/*******************************************************************************************
NSMutableString
*******************************************************************************************/????

/*---------------給字符串分配容量----------------*/
//stringWithCapacity:
NSMutableString?*String;
String?=?[NSMutableString?stringWithCapacity:40];


/*---------------在已有字符串后面添加字符----------------*/????

//appendString:?and?appendFormat:

NSMutableString?*String1?=?[[NSMutableString?alloc]?initWithString:@"This?is?a?NSMutableString"];
//[String1?appendString:@",?I?will?be?adding?some?character"];
[String1?appendFormat:[NSString?stringWithFormat:@",?I?will?be?adding?some?character"]];
NSLog(@"String1:%@",String1);
*/


/*--------在已有字符串中按照所給出范圍和長度刪除字符------*/????
/*
//deleteCharactersInRange:
NSMutableString?*String1?=?[[NSMutableString?alloc]?initWithString:@"This?is?a?NSMutableString"];
[String1?deleteCharactersInRange:NSMakeRange(0,?5)];
NSLog(@"String1:%@",String1);



/*--------在已有字符串后面在所指定的位置中插入給出的字符串------*/

//-insertString:?atIndex:
NSMutableString?*String1?=?[[NSMutableString?alloc]?initWithString:@"This?is?a?NSMutableString"];
[String1?insertString:@"Hi!?"?atIndex:0];
NSLog(@"String1:%@",String1);



/*--------將已有的空符串換成其它的字符串------*/

//-setString:
NSMutableString?*String1?=?[[NSMutableString?alloc]?initWithString:@"This?is?a?NSMutableString"];
[String1?setString:@"Hello?Word!"];
NSLog(@"String1:%@",String1);



/*--------按照所給出的范圍,和字符串替換的原有的字符------*/

//-setString:
NSMutableString?*String1?=?[[NSMutableString?alloc]?initWithString:@"This?is?a?NSMutableString"];
[String1?replaceCharactersInRange:NSMakeRange(0,?4)?withString:@"That"];
NSLog(@"String1:%@",String1);



/*-------------判斷字符串內是否還包含別的字符串(前綴,后綴)-------------*/
//01:檢查字符串是否以另一個字符串開頭-?(BOOL)?hasPrefix:?(NSString?*)?aString;
NSString?*String1?=?@"NSStringInformation.txt";
[String1?hasPrefix:@"NSString"]?=?=?1????NSLog(@"YES")?:?NSLog(@"NO");
[String1?hasSuffix:@".txt"]?=?=?1????NSLog(@"YES")?:?NSLog(@"NO");

//02:查找字符串某處是否包含其它字符串?-?(NSRange)?rangeOfString:?(NSString?*)?aString,這一點前面在串中搜索子串用到過;



/*******************************************************************************************
NSArray
*******************************************************************************************/

/*---------------------------創建數組------------------------------*/
//NSArray?*array?=?[[NSArray?alloc]?initWithObjects:
@"One",@"Two",@"Three",@"Four",nil];

self.dataArray?=?array;
[array?release];

//-?(unsigned)?Count;數組所包含對象個數;
NSLog(@"self.dataArray?cound:%d",[self.dataArray?count]);

//-?(id)?objectAtIndex:?(unsigned?int)?index;獲取指定索引處的對象;
NSLog(@"self.dataArray?cound?2:%@",[self.dataArray?objectAtIndex:2]);


/*--------------------------從一個數組拷貝數據到另一數組(可變數級)----------------------------*/????

//arrayWithArray:
//NSArray?*array1?=?[[NSArray?alloc]?init];
NSMutableArray?*MutableArray?=?[[NSMutableArray?alloc]?init];
NSArray?*array?=?[NSArray?arrayWithObjects:
@"a",@"b",@"c",nil];
NSLog(@"array:%@",array);
MutableArray?=?[NSMutableArray?arrayWithArray:array];
NSLog(@"MutableArray:%@",MutableArray);

array1?=?[NSArray?arrayWithArray:array];
NSLog(@"array1:%@",array1);


//Copy

//id?obj;
NSMutableArray?*newArray?=?[[NSMutableArray?alloc]?init];
NSArray?*oldArray?=?[NSArray?arrayWithObjects:
@"a",@"b",@"c",@"d",@"e",@"f",@"g",@"h",nil];

NSLog(@"oldArray:%@",oldArray);
for(int?i?=?0;?i?<?[oldArray?count];?i++)
{????????
obj?=?[[oldArray?objectAtIndex:i]?copy];
[newArray?addObject:?obj];
}
//?????
NSLog(@"newArray:%@",?newArray);
[newArray?release];


//快速枚舉

//NSMutableArray?*newArray?=?[[NSMutableArray?alloc]?init];
NSArray?*oldArray?=?[NSArray?arrayWithObjects:
@"a",@"b",@"c",@"d",@"e",@"f",@"g",@"h",nil];????
NSLog(@"oldArray:%@",oldArray);

for(id?obj?in?oldArray)
{
[newArray?addObject:?obj];
}
//?????
NSLog(@"newArray:%@",?newArray);
[newArray?release];????


//Deep?copy

//NSMutableArray?*newArray?=?[[NSMutableArray?alloc]?init];
NSArray?*oldArray?=?[NSArray?arrayWithObjects:
@"a",@"b",@"c",@"d",@"e",@"f",@"g",@"h",nil];????
NSLog(@"oldArray:%@",oldArray);????
newArray?=?(NSMutableArray*)CFPropertyListCreateDeepCopy(kCFAllocatorDefault,?(CFPropertyListRef)oldArray,?kCFPropertyListMutableContainers);
NSLog(@"newArray:%@",?newArray);
[newArray?release];????


//Copy?and?sort

//NSMutableArray?*newArray?=?[[NSMutableArray?alloc]?init];
NSArray?*oldArray?=?[NSArray?arrayWithObjects:
@"b",@"a",@"e",@"d",@"c",@"f",@"h",@"g",nil];????
NSLog(@"oldArray:%@",oldArray);
NSEnumerator?*enumerator;
enumerator?=?[oldArray?objectEnumerator];
id?obj;
while(obj?=?[enumerator?nextObject])
{
[newArray?addObject:?obj];
}
[newArray?sortUsingSelector:@selector(compare:)];
NSLog(@"newArray:%@",?newArray);
[newArray?release];



/*---------------------------切分數組------------------------------*/

//從字符串分割到數組-?componentsSeparatedByString:
NSString?*string?=?[[NSString?alloc]?initWithString:@"One,Two,Three,Four"];
NSLog(@"string:%@",string);????
NSArray?*array?=?[string?componentsSeparatedByString:@","];
NSLog(@"array:%@",array);
[string?release];


//從數組合并元素到字符串-?componentsJoinedByString:
NSArray?*array?=?[[NSArray?alloc]?initWithObjects:@"One",@"Two",@"Three",@"Four",nil];
NSString?*string?=?[array?componentsJoinedByString:@","];
NSLog(@"string:%@",string);



/*******************************************************************************************
NSMutableArray
*******************************************************************************************/
/*---------------給數組分配容量----------------*/
//NSArray?*array;
array?=?[NSMutableArray?arrayWithCapacity:20];



/*--------------在數組末尾添加對象----------------*/
//-?(void)?addObject:?(id)?anObject;
//NSMutableArray?*array?=?[NSMutableArray?arrayWithObjects:
@"One",@"Two",@"Three",nil];
[array?addObject:@"Four"];
NSLog(@"array:%@",array);



/*--------------刪除數組中指定索引處對象----------------*/????
//-(void)?removeObjectAtIndex:?(unsigned)?index;????
//NSMutableArray?*array?=?[NSMutableArray?arrayWithObjects:
@"One",@"Two",@"Three",nil];
[array?removeObjectAtIndex:1];
NSLog(@"array:%@",array);



/*-------------數組枚舉---------------*/????
//-?(NSEnumerator?*)objectEnumerator;從前向后
//NSMutableArray?*array?=?[NSMutableArray?arrayWithObjects:
@"One",@"Two",@"Three",nil];
NSEnumerator?*enumerator;
enumerator?=?[array?objectEnumerator];

id?thingie;
while?(thingie?=?[enumerator?nextObject])?{
NSLog(@"thingie:%@",thingie);
}


//-?(NSEnumerator?*)reverseObjectEnumerator;從后向前
//NSMutableArray?*array?=?[NSMutableArray?arrayWithObjects:
@"One",@"Two",@"Three",nil];
NSEnumerator?*enumerator;
enumerator?=?[array?reverseObjectEnumerator];

id?object;
while?(object?=?[enumerator?nextObject])?{
NSLog(@"object:%@",object);
}


//快速枚舉
//NSMutableArray?*array?=?[NSMutableArray?arrayWithObjects:
@"One",@"Two",@"Three",nil];
for(NSString?*string?in?array)
{
NSLog(@"string:%@",string);
}



/*******************************************************************************************
NSDictionary
*******************************************************************************************/

/*------------------------------------創建字典------------------------------------*/
//-?(id)?initWithObjectsAndKeys;

//NSDictionary?*dictionary?=?[[NSDictionary?alloc]?initWithObjectsAndKeys:@"One",@"1",@"Two",@"2",@"Three",@"3",nil];
NSString?*string?=?[dictionary?objectForKey:@"One"];
NSLog(@"string:%@",string);
NSLog(@"dictionary:%@",dictionary);
[dictionary?release];


/*******************************************************************************************
NSMutableDictionary
*******************************************************************************************/

/*------------------------------------創建可變字典------------------------------------*/????
//創建
NSMutableDictionary?*dictionary?=?[NSMutableDictionary?dictionary];

//添加字典
[dictionary?setObject:@"One"?forKey:@"1"];
[dictionary?setObject:@"Two"?forKey:@"2"];
[dictionary?setObject:@"Three"?forKey:@"3"];
[dictionary?setObject:@"Four"?forKey:@"4"];
NSLog(@"dictionary:%@",dictionary);

//刪除指定的字典
[dictionary?removeObjectForKey:@"3"];
NSLog(@"dictionary:%@",dictionary);


/*******************************************************************************************
NSValue(對任何對象進行包裝)
*******************************************************************************************/

/*--------------------------------將NSRect放入NSArray中------------------------------------*/????
//將NSRect放入NSArray中
NSMutableArray?*array?=?[[NSMutableArray?alloc]?init];
NSValue?*value;
CGRect?rect?=?CGRectMake(0,?0,?320,?480);????
value?=?[NSValue?valueWithBytes:&rect?objCType:@encode(CGRect)];
[array?addObject:value];
NSLog(@"array:%@",array);

//從Array中提取
value?=?[array?objectAtIndex:0];
[value?getValue:&rect];
NSLog(@"value:%@",value);


/*******************************************************************************************
從目錄搜索擴展名為jpg的文件
*******************************************************************************************/

//NSFileManager?*fileManager?=?[NSFileManager?defaultManager];
NSString?*home;
home?=?@"../Users/";

NSDirectoryEnumerator?*direnum;
direnum?=?[fileManager?enumeratorAtPath:?home];

NSMutableArray?*files?=?[[NSMutableArray?alloc]?init];

//枚舉
NSString?*filename;
while?(filename?=?[direnum?nextObject])?{
if([[filename?pathExtension]?hasSuffix:@"jpg"]){
[files?addObject:filename];
}
}

//快速枚舉
//for(NSString?*filename?in?direnum)
//{
//????if([[filename?pathExtension]?isEqualToString:@"jpg"]){
//????????[files?addObject:filename];
//????}
//}
NSLog(@"files:%@",files);

//枚舉
NSEnumerator?*filenum;
filenum?=?[files?objectEnumerator];
while?(filename?=?[filenum?nextObject])?{
NSLog(@"filename:%@",filename);
}

//快速枚舉
//for(id?object?in?files)
//{
//????NSLog(@"object:%@",object);
//}

?

摘自:http://hi.baidu.com/jis2007/blog/item/62b47dc2e7cab63be4dd3bff.html/cmtid/58a09f34cee304b9d1a2d331?

復制代碼

?

?

?
?

?

?

?

?

//NSString-不變的字符串。一個文本字符串時創建并隨后無法改變。NSString實現代表一個Unicode字符數組,換句話說,一個文本字符串。

?

? ? //初始化方法

? ? //1,1 創建 (格式初始化)

? ? NSString *str1 = [[NSString alloc] initWithFormat:@"我是 %@ 年齡 %d",@"通",18];

? ? //NSLog(@"%@",str1);

?? ?

? ? //1,2 創建,(便利構造器)

? ? NSString *str2 = [NSString stringWithFormat:@"我是 %@ 年齡 %d",@"通",19];

? ? //NSLog(@"%@",str2);

?? ?

? ? //1,3 簡便創建(字面量)

? ? NSString *s3 = @"abcd.mp3";

?? // NSLog(@"%@",s3);

?? ?

? ? //1,4 已有字符串創建

? ? NSString *s4 = [NSString stringWithString:s3];

? ? //NSLog(@"%@",s4);

?? ?

?? ?

? ? //2,長度

? ? NSLog(@"s3長度:%lu",s3.length);

?? ?

? ? //3,后綴

? ? if ([s3 hasSuffix:@"mp3"]) {

? ? ? ? NSLog(@"有 mp3 后綴");

? ? }

?? ?

? ? //4,1 截取

? ? NSString *s5 = [@"abcde" substringFromIndex:3];

? ? //NSLog(@"截取到結尾:%@",s5);

?

? ? //4,2 截取

? ? NSString *s6 = [@"abcde" substringToIndex:3];

? ? //NSLog(@"從頭截取:%@",s6);

?? ?

? ? //4,3 區域截取Range

? ? NSString *s7 = [@"abcde" substringWithRange:NSMakeRange(1, 3)];

? ? //NSLog(@"區域截取:%@",s7);

?? ?

? ? //4,4 獲取位置

? ? NSRange r = [@"abcdefg" rangeOfString:@"bcd"];

? ? NSLog(@"區域:%@", NSStringFromRange(r) );

?? ?

? ? //5,? 測試兩個字符串是否相等

? ? if ([@"ss" isEqualToString:@"ss"]) {

? ? ? ? NSLog(@"相同");

? ? }else{

? ? ? ? NSLog(@"不相同");

? ? }

?

? ? //6, 追加

? ? NSString *ss3 = [s3 stringByAppendingString:@"dddd"];

? ? NSLog(@"追加:%@",ss3);

?? ?

? ? //7, 替換

? ? NSString * ss4 = [s3 stringByReplacingOccurrencesOfString:@"abc" withString:@"***"];

?? ? NSLog(@"替換:%@",ss4);

?? ?

? ? //8, 比較

?? ? NSLog(@"比較:%d",(int)[@"aa" compare:@"aa"]);

?? ?

? ? //9,字符串轉數值類型

? ? NSInteger in1 = [@"123" intValue];

? ? CGFloat in2 = [@"1.2" floatValue];

? ? NSLog(@"替換:%f",in2);

?

?? //10, 大小寫轉換

? ? NSLog(@"%@",[@"ssd" uppercaseString]);

? ? NSLog(@"%@",[@"sGYH" lowercaseString]);

? ? NSLog(@"%@",[@"ssd" capitalizedString]);//首字母大寫

?

?

?

?

? ?//1,可變字符串

? ? NSMutableString *ms=[NSMutableString stringWithFormat:@"dkfj"];

? ? //插入

? ? [ms insertString:@"ni" atIndex:0];

? ? //追加

? ? [ms appendString:@"dd"];

? ? //刪除

? ? [ms deleteCharactersInRange:NSMakeRange(0,3)];

? ? //設置

? ? [ms setString:@"vv"];

? ? //

? ? NSLog(@"%@",ms);

?? ?

? ??

?

轉載于:https://www.cnblogs.com/iOS-mt/p/4105908.html

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

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

相關文章

安全市場五巨頭將面臨新興廠商的挑戰

賽門鐵克、思科、IBM、Check Point、英特爾&#xff0c;警鐘已敲響~ 2016年同比增長率11.5%的數據出臺之后&#xff0c;市場研究公司科技商業研究(TBR)為來年的安全行業繪制了一幅嶄新的藍圖——安全市場上現有的企業將受到新興廠商的挑戰。 展望未來&#xff0c;現有安全市場五…

linux編譯運行build.sh,linux下libwebsockets編譯及實例

最近想自己搭建一個webscoket協議的服務器&#xff0c;打算用libwebsockts這個庫。下載代碼編譯。編寫一個shell腳本#!/bin/sh# wget http://git.warmcat.com/cgi-bin/cgit/libwebsockets/snapshot/libwebsockets-1.4-chrome43-firefox-36.tar.gz# tar xvzf libwebsockets-1.4-…

Tomcat如何配置環境變量

1&#xff0c; JDK&#xff1a;版本為jdk-7-windows-i586.exe 下載地址: http://www.oracle.com/technetwork/java/javase/downloads/index.html 2&#xff0c;tomcat&#xff1a;版本為apache-tomcat-7.0.33-windows-x86.zip 下載地址&#xff1a;http://tomcat.apache.org/ 2…

eclipse常用快捷鍵——非常實用

1、eclipse 查看變量或方法被調用的快捷鍵如下&#xff1a; &#xff08;1&#xff09;雙擊選中變量或者方法&#xff08;2&#xff09;鍵盤上CtrlshiftG組合鍵 2、eclipse中查看接口實現類快捷鍵 先找到接口類打開,然后雙擊接口名選中,再按住ctrlT就可以了。 3、eclipse中全局…

反編譯查看源碼dex2jar

為什么80%的碼農都做不了架構師&#xff1f;>>> 上次說到了用apktool反編譯&#xff0c;這次我們來用dex2jar 把apk解壓得到文件夾 文件夾打開看到這些文件 其中這個classes.dex就是這次需要用到的字節碼文件 把這個字節碼文件托到dex2jar目錄里 命令行編輯 得到下…

linux命令驗證sqlldr,Linux:sqlldr命令

第一步&#xff1a;寫一個 ctl格式的控制文件CTL 控制文件的內容 &#xff1a;load data --1. 控制文件標識infilexxx.txt --2. 要導入的數據文件名insert into table test--3. 將文件插入到數據庫的 test 表中fields terminated by X09 --4. 用于分割一行中各個屬性值的符號(例…

STL 中的鏈表排序

一直以來學習排序算法&#xff0c; 都沒有在鏈表排序上下太多功夫&#xff0c;因為用得不多。最近看STL源碼&#xff0c;才發現&#xff0c;原來即使是鏈表&#xff0c;也能有時間復雜度為O(nlogn)的算法&#xff0c; 大大出乎我的意料之外&#xff0c;一般就能想到個插入排序。…

cmd更換編碼類型

chcp 65001 UTF-8 65001 GBK 936 本文出自 “曾頤楠的播客” 博客&#xff0c;請務必保留此出處http://zengyinan.blog.51cto.com/9524976/1721475 轉載于:https://www.cnblogs.com/zengyinanos/p/5042732.html

代碼混淆之后定位線上bug

代碼混淆的目的 代碼混淆的目的是防止競爭對手通過反編譯來閱讀項目代碼。 Android中通過ProGuard來做代碼混淆&#xff08;當然也還有其他的產品可以做代碼混淆&#xff09;。 bug日志反混淆 資料&#xff1a;錯誤log、mapping.txt 異常log&#xff1a; mapping.txt&#xff…

linux怎么切換不同版本的r,在linux中用同一個版本的R 同時安裝 Seurat2 和 Seurat3

在linux中用同一個版本的R 同時安裝 Seurat 2 和 Seurat 3Seurat 作為單細胞分析中的重量級R包&#xff0c;有多好用用&#xff0c;用過的人都知道。Seurat 分析流程基本涵蓋了單細胞分析中的所有常見分析方法&#xff0c;包括filtering&#xff0c;tSNE&#xff0c;UMAP降維及…

Unity手游之路四3d旋轉-四元數,歐拉角和變幻矩陣

http://blog.csdn.net/janeky/article/details/17272625 今天我們來談談關于Unity中的旋轉。主要有三種方式。變換矩陣&#xff0c;四元數和歐拉角。 定義 變換矩陣可以執行任意的3d變換&#xff08;平移&#xff0c;旋轉&#xff0c;縮放&#xff0c;切邊&#xff09;并且透視…

本地通知

本地通知&#xff0c;local notification&#xff0c;用于基于時間行為的通知&#xff0c;比如有關日歷或者todo列表的小應用。另外&#xff0c;應用如果在后臺執行&#xff0c;iOS允許它在受限的時間內運行&#xff0c;它也會發現本地通知有用。比如&#xff0c;一個應用&…

Redux 并不慢,只是你使用姿勢不對 —— 一份優化指南

原文地址&#xff1a;Redux 并不慢&#xff0c;只是你使用姿勢不對 —— 一份優化指南原文作者&#xff1a;Julian Krispel譯文出自&#xff1a;掘金翻譯計劃本文永久鏈接&#xff1a;github.com/xitu/gold-m…譯者&#xff1a;reid3290校對者&#xff1a;sunui&#xff0c;xek…

把windows裝到linux下,如何將WSL(Windows Subsystem for Linux 2)安裝到Windows 10?

原標題&#xff1a;如何將WSL(Windows Subsystem for Linux 2)安裝到Windows 10&#xff1f;Windows 10憑借大受歡迎的WSL(Windows Subsystem for Linux)進入Linux領域。由于最近推出了WSL的最新版WSL2&#xff0c;用戶現在可以利用實際的Linux內核從Windows執行Linux任務。現在…

TWRP-recovery中文界面安裝方法[轉]

把下載到的ui.zip放入sdcard1/twrp文件夾。注意&#xff0c;是內置存儲卡中。如沒有上述文件夾&#xff0c;自行建立后通過文件管理器放入&#xff0c;不是卡刷。文件夾應如下所示&#xff1a;sdcard1&#xff08;內置SD&#xff09; &#xff5c; ┕--twrp&#xff08;文件夾…

如何定期備份網站數據

產生這個問題的背景是我在維護兩個個人的網站&#xff0c;因為采用的是虛擬主機&#xff0c;有時候空間續費不及時等&#xff0c;都可能造成數據的丟失&#xff0c;為了保障數據不丟失&#xff0c;因為有必要每15天左右對網站數據進行備份以防止發生不當的事情。 我們希望做的就…

初創團隊可能不適合應屆生小孩

根據最近招聘中接觸到的一些剛畢業小孩的表現&#xff0c;談談這個問題&#xff1a; 1、扛不住&#xff0c;初創團隊一般最好一人撐一快工作&#xff0c;剛畢業經驗比較薄的小孩在這方面一是心理上不敢擔當&#xff0c;二是能力上確實還需要磨煉成長 2、初創團隊的那個環境可能…

vba執行linux命令,從VBA中的shell命令捕獲輸出值?

慕蓋茨4494581根據Andrew Lessard的回答&#xff0c;這是一個運行命令并將輸出作為字符串返回的函數 -Public Function ShellRun(sCmd As String) As StringRun a shell command, returning the output as a stringDim oShell As ObjectSet oShell CreateObject("WScript…

溢出和剪裁,可見性

內容溢出和剪裁 如果一個元素的內容對于元素大小來說過大&#xff0c;就有可能溢出元素本身。對于此情況&#xff0c;有一些解決辦法可選。 溢出 overflow 值 visible(默認):內容在元素框外可見。一般會導致內容超出其自己的元素框&#xff0c;但不會改變框的形狀scroll:溢出部…

C#= 棧模仿堆的操作

//原理&#xff0c;利用兩個棧&#xff0c;互相作用&#xff0c;來模仿堆的效果&#xff0c;先進先出。。 1 using System;2 using System.Collections.Generic;3 using System.Linq;4 using System.Threading.Tasks;5 6 namespace TwoStacksQueue7 {8 public class Progra…