英文原文:10minutesPerltutorialforJavadeveloper
这10分钟教程并不是Java和Perl的比较。目标是探索作为Java开发人员如何快速学习Perl。以下是一些从我的角度来看的关键笔记。
1.从基础开始
不像java,Perl不需要“main”方法作为入口点。要运行一个简单的Perl程序如下:
| |
2.日期类型
在Perl中的日期类型是非常简单,它有3种类型:标量,数组和Hash。 标是一个单值,它基本上可以是任何其他比数组或哈希。
数组是一个数组,可以包含不同类型的元素,如整数,字符串。
哈希基本上是像Java的HashMap中。
将下面的代码结合所有的使用情况。
01 | #claim
ahashandassignsomevalues |
10 | my @anArray = keys ( %aHash ); |
12 | #loop arrayandoutputeachscalar |
13 | foreach my $aScalar ( @anArray ){ | 输出结果:
如果你想对数组进行排序,你可以简单地使用类似下面的排序功能:
1 | foreach my $aScalar ( sort @anArray ){ |
| |
3.条件、循环表达式
Perl为条件和循环语句准备了if,while,for,foreach等关键字,这与Java非常类似(switch除外)。
详情请见下面的代码:
13 | #while while($condition<5){ |
21 | #foreach my@anArray=("a",1,'c'); |
22 | foreach my $aScalar ( sort @anArray ){ | 4.文件的读写
下面这个例子向我们展示了如何读写文件。这里请注意">"和">>"之间的区别,">>"在文件末尾追加内容,">"创建一个新的文件储存信息。
03 | open ( my $fh , "<" , $file ) or die "cannot open<$file!" ; |
04 | while ( my $aline =
< $fh > ){ |
05 | #chomp sononewlinecharacter |
13 | my $output = "output.txt" ; |
14 | open ( my $fhOutput , ">" , $output ) or die ( "Error: Cannotopen$outputfile!" ); |
15 | print $fhOutput "something" ; | 5.正则表达式
Perl中有两种使用正则表达式的方法:m和s。
下面的代码在$str上应用了正则表达式。
1 | $str =~
m/program<span>(</span>creek|river)/ | 如果$str的内容是“programcreek”,表达式将会返回true。这也可以被用于条件判断或循环。
| |
6.传值/引用的语法
在Perl中没有必要定义方法/函数,但如果你这么做了,那将大大提高代码的模块化和可充用性。但我们需要对参数的传递非常小心。
你可以直接传递一个标量,但如果传递的是数组或哈希类就需要特别的当心。
数组:
03 | #In subsubprocessArrayByReference($){ |
09 | #In subprocessarray:subprocessArrayByValue($){ |
14 | processArrayByValue( @testArray ); |
15 | processArrayByReference(
\ @testArray ); | 哈系类:
3 | for my $key ( sort keys %hash )
{ |
9 | printHash(\ %twoLettersCount ); | 7.一些实例
1).遍历字符串中的每个字符。
1 | my @lineCharArray = split ( '' , $aline ); |
2 | foreach my $character ( @lineCharArray ){ | 2).创建一个包含26个字母的数组。
你可以简单地实现这个功能并且无需循环26次。
1 | my @charArray =
( 'a' .. 'z' ); |
2 | my @twoCharArray =
( 'aa' .. 'zz' ); |
|
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理