独角兽企业重金招聘Python工程师标准>>>
/**
* 功能:给定直角坐标上的两条线,确定这两条线会不会相交。
*/
[java]view plain copy
publicclassLine{staticdoubleepsilon=0.000001;publicdoubleslope;//斜率publicdoubleyintercept;//与y轴的截距publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstub}/***假设:*1)若两条线是相同的(斜率和y轴截距相等),则认为这两条线相交;*2)设计线的数据结构。*思路:*两条线不平行必相交,因此只需检查两者的斜率是否相同,或者是否为同一条。**此类问题的注意事项:*1)多提问,确定假设条件或前提条件。*2)尽量设计并使用数据结构,注重面向对象设计。*3)仔细考虑线的数据结构的设计。*4)不要假设斜率和y轴截距为整数。*5)了解浮点数表示法的限制。不要用“==”来检查浮点数是否相等,而应该检查两者差值是否小于某个极小值(如epsilon=0.000001)。**@paramline2*@return*/publicbooleanintersect(Lineline2){returnMath.abs(this.slope-line2.slope)>epsilon||Math.abs(this.yintercept-line2.yintercept)<epsilon;}}