Java 64-BITS coding
Rules available in this category:
Rule 1: Avoid_shift_operators
Severity:
Medium
Rule:
Use of shift operator may produce undesire result when application is run in machine with different word size
Reason:
Use of shift operator may produce undesire result when application is run in machine with different word size
Usage Example:
package com.rule;
class Avoid_shift_operators_violation
{
public void method()
{
int x = 0;
int X = x >> 2; // VIOLATION
int Y = x << 1; // VIOLATION
X++;
Y++;
}
}
Should be written as:
package com.rule;
class Avoid_shift_operators_correction
{
public void method()
{
int x = 0;
int X = x / 4; // CORRECTION
int Y = x * 2; // CORRECTION
X++;
Y++;
}
}
Reference:
Reference Not Available.
Rule 2: Invalid_shift_operand
Severity:
Medium
Rule:
Avoid using invalid operand in shift operation.
Reason:
Avoid using invalid operand in shift operation.
Usage Example:
package com.rule;
public class Invalid_shift_operand_violation
{
public void method()
{
int i = 10;
i = i << 32; // Vioalation
}
}
Should be written as:
package com.rule;
public class Invalid_shift_operand_correction
{
public void method()
{
int i = 10;
i = i << 2; // Correction
}
}
Reference:
Reference not available.
Rule 3: Avoid_unnecessary_unsigned_right_shift
Severity:
Medium
Rule:
Avoid unnecessary unsigned right shift.
Reason:
Avoid unnecessary unsigned right shift.
Usage Example:
package com.rule;
public class Avoid_unnecessary_unsigned_right_shift_violation
{
public void method()
{
int i = 10;
Short s = (short)( i >>> 2 ); // Violation.
}
}
Should be written as:
package com.rule;
public class Avoid_unnecessary_unsigned_right_shift_correction
{
public void method()
{
int i = 10;
Short s = (short)( i >> 2 ); // Correction.
}
}
Reference:
Reference not available.