package Ġro cks . daniel w . chapter 6 Ċ Ċ fun Ġmain () Ġ{ ĊĊĠ Ġprintln ( getNumber (" 2 2 ")) ĊĠ Ġprintln ( getNumber (" a ")) ĊĊĠ Ġ// ĠIt 's Ġpossible Ġto Ġuse Ġel vis Ġoperator , Ġbut Ġthis Ġexample Ġseems Ġnot Ġto Ġbe Ġvery Ġuseful ĊĠ Ġprintln ( get Another Number (" 2 2 . 5 ") Ġ?: Ġthrow ĠIllegalArgumentException (" Number Ġisn 't Ġan ĠInt ")) ĊĠ Ġprintln ( get Another Number (" a ") Ġ?: Ġ" Can 't Ġprint Ġthe Ġresult ") Ċ Ċ } Ċ Ċ /* Ċ Ġ* ĠUse Ġtry / catch Ġas Ġexpression Ċ Ġ*/ Ċ fun Ġget Number ( str : ĠString ): ĠInt Ġ{ ĊĠ Ġreturn Ġtry Ġ{ ĊĠĠĠ ĠInteger . parseInt ( str ) Ġ// Ġvalue Ġget 's Ġreturned ĊĠ Ġ} ĊĠ Ġcatch Ġ( e : ĠNumber FormatException ) Ġ{ ĊĠĠĠĠ 0 Ġ// Ġvalue Ġget 's Ġalso Ġreturned ĊĠ Ġ} ĊĠ Ġfinally Ġ{ ĊĠĠĠ Ġprintln (" I 'm Ġin Ġfinally Ġblock ") ĊĠĠĠ Ġ// Ġcan 't Ġreturn Ġa Ġvalue Ġwhen Ġtry / catch Ġused Ġas Ġexpression ĊĠ Ġ} Ċ } Ċ Ċ /* Ċ Ġ* ĠReturn ing Ġnullable Ġdata Ġtype Ġto Ġuse Ġel vis Ġoperator Ġat Ġthe Ġcalling Ġside Ċ Ġ*/ Ċ fun Ġget Another Number ( str : ĠString ): ĠInt ? Ġ{ ĊĠ Ġreturn Ġtry Ġ{ ĊĠĠĠ ĠInteger . parseInt ( str ) ĊĠ Ġ} ĊĠ Ġcatch Ġ( e : ĠNumber FormatException ) Ġ{ ĊĠĠĠ Ġnull ĊĠ Ġ} Ċ } Ċ