Operatorer i Java För att göra beräkningar finns följande aritmetiska operatorer: Namn Syntax Semantik Exempel additionsoperator, a+b strängsammanfogningsoperator Summan av a och b, ifall båda är tal. Om någon av a och b är x=1+4; x=”a”+4; en sträng, blir resultatet den sammanfogade strängen. x=4+”a”; // x är nu 5 // x är nu ”a4” // x är nu ”4a” subtraktionsoperator a-b Differensen av a och b x=5-7; // x är nu -2 multiplikationsoperator a*b Produkten av a och b x=5*8; // x är nu 40 divisionsoperator a/b Kvoten av a och b. Om a och b är heltal, avrundas resultatet x=15/4; neråt. Om någon av a och b är decimaltal (float eller double), är x=15.0/4; x=15/4.0; resultatet float resp. double, och då avrundas det inte. restoperator, ”mod”-operator a%b Resten vid division av a med b. Förutsätter att a och b är heltal. x=15%4; negationsoperator -a Minus a // x är nu 3 // x är nu 3.25 // x är nu 3.25 // x är nu 3 x=1234%10; // x är nu 4 x=-15; x=--15; För att tilldela värden till variabler finns följande tilldelningsoperatorer: Namn Syntax Semantik // x är nu -15 // x är nu 15 Exempel tilldelningsoperator a=b Sätter variabeln a till värdet av b x=1+4; // x är nu 5 ökningsoperator a++ a=a+1 x=1; x++; // x är nu 2 minskningsoperator a-- a=a–1 x=4; x--; // x är nu 3 ökningsoperator a += b a = a + b x=1; x+=4; // x är nu 5 minskningsoperator a -= b a = a - b x=1; x-=4; // x är nu -3 För att jämföra tal finns följande jämförelseoperatorer: Namn Syntax likhetsoperator Semantik Exempel // falskt // sant a == b Sant om a och b är lika. Två varningar: För objekt, såsom strängar, använd i stället metoden equals(). För decimaltal är det ofta dåligt att göra exakta jämförelser, eftersom dessa inte alltid kan representeras exakt i datorn. if (3==4) if (3==3) skilt från-operator a != b Sant om a är skilt från b. Se varningarna ovan! if (3!=4) if (3!=3) // sant // falskt större än eller lika-operator a >= b Sant om a är större än eller lika med b if (3>=4) if (3>=3) if (4>=3) // falskt // sant // sant mindre än eller lika-operator a <= b Sant om a är mindre än eller lika med b if (3<=4) if (3<=3) if (4<=3) // sant // sant // falskt större än-operator a>b Sant om a är större än b (och a och b är olika) if (3>4) if (3>3) if (4>3) // falskt // falskt // sant mindre än-operator a<b Sant om a är mindre än b (och a och b är olika) if (3<4) if (3<3) if (4<3) // sant // falskt // falskt String text = ”hej”; if (text.equals(”hej”)) // sant För att kombinera sanningsuttryck finns följande Boolska operatorer: Namn Syntax Semantik Exempel och-operator a && b Sant om a och b är sanna. Om a är falsk, så evalueras inte b. if (3<4 && 5<6) if (3<4 && 6<5) if (4<3 && 5<6) eller-operator a || b Sant om a eller b är sann. Om a är sann, så evalueras inte b. if (3<4 || 5<6) if (4<3 || 6<5) if (5/0==1) inte-operator !a Sant om a är falskt // sant // falskt // falskt // sant // falskt // division med 0 // ger fel vid körning if (3<4 || 5/0==1) // sant: eftersom 3<4 // utförs inte divisionen if (!(3 < 4)) if (!(3 > 4)) // falskt // sant